File trigona_be6dfedd91e1ebc81d58a61b05b0ef93322425b247636a0f7f5c3eeebbc52edd.exe
Function:
    00411f40
    00411f40fn_411f40:
    00411f40push rbp
    00411f41sub rsp, 112
    00411f45mov rbp, rsp
    00411f48mov [rbp+40], rcx
    00411f4cmov [rbp+48], 0
    00411f54mov [rbp+64], 0
    00411f5cmov [rbp+56], 0
    00411f64mov [rbp+80], 0
    00411f6cmov [rbp+72], 0
    00411f74mov [rbp+88], 0
    00411f7cmov [rbp+104], 0
    00411f84mov [rbp+96], 0
    00411f8cmov [rbp+136], rdx
    00411f93mov [rbp+144], r8
    00411f9amov rcx, [rbp+136]
    00411fa1call fn_40bec0
    00411fa6mov rcx, [rbp+144]
    00411fadcall fn_40bec0
    00411fb2nop
    00411fb3mov rcx, [rbp+40]
    00411fb7call fn_40bcf0
    00411fbccmp [rbp+144], 0
    00411fc4je 0x4120ff
    00411fcalea rcx, [rbp+96]
    00411fcemov rdx, [rbp+144]
    00411fd5call fn_40c3e0
    00411fdaxor eax, eax
    00411fdcmov rcx, [rbp+144]
    00411fe3test rcx, rcx
    00411fe6je 0x411feb
    00411fe8mov eax, [rcx-4]
    00411feb
    00411febloc_411feb:
    00411febcmp eax, 1
    00411feejl 0x412024
    00411ff0
    00411ff0loc_411ff0:
    00411ff0mov rcx, [rbp+144]
    00411ff7movsxd rdx, eax
    00411ffacmp [rcx+2*rdx-2], 46
    00412000jne 0x41201d
    00412002lea rcx, [rbp+96]
    00412006mov rdx, [rbp+144]
    0041200dmov r8l, 1
    00412013mov r9l, eax
    00412016call fn_40dca0
    0041201bjmp 0x412024
    0041201d
    0041201dloc_41201d:
    0041201dsub eax, 1
    00412020test eax, eax
    00412022jne 0x411ff0
    00412024
    00412024loc_412024:
    00412024nop
    00412025lea rcx, [rbp+104]
    00412029mov rdx, [rbp+136]
    00412030call fn_411b70
    00412035cmp [rbp+104], 0
    0041203aje 0x412062
    0041203cmov rcx, rbp
    0041203flea rdx, [rbp+88]
    00412043mov r8, [rbp+96]
    00412047mov r9, [rbp+104]
    0041204bcall fn_411d00
    00412050mov rcx, [rbp+40]
    00412054mov rdx, [rbp+88]
    00412058call fn_40c360
    0041205djmp 0x4120fe
    00412062
    00412062loc_412062:
    00412062call GetUserDefaultUILanguage
    00412067lea rcx, [rbp+72]
    0041206bmov edx, eax
    0041206dcall fn_411300
    00412072mov rcx, rbp
    00412075lea rdx, [rbp+80]
    00412079mov r8, [rbp+96]
    0041207dmov r9, [rbp+72]
    00412081call fn_411d00
    00412086mov rcx, [rbp+40]
    0041208amov rdx, [rbp+80]
    0041208ecall fn_40c360
    00412093mov rax, [rbp+40]
    00412097cmp [rax], 0
    0041209bjne 0x4120d7
    0041209dcmp [rip+0x57e44], 0
    004120a4jne 0x4120d7
    004120a6call GetSystemDefaultUILanguage
    004120ablea rcx, [rbp+56]
    004120afmov edx, eax
    004120b1call fn_411300
    004120b6mov rcx, rbp
    004120b9lea rdx, [rbp+64]
    004120bdmov r8, [rbp+96]
    004120c1mov r9, [rbp+56]
    004120c5call fn_411d00
    004120camov rcx, [rbp+40]
    004120cemov rdx, [rbp+64]
    004120d2call fn_40c360
    004120d7
    004120d7loc_4120d7:
    004120d7mov rax, [rbp+40]
    004120dbcmp [rax], 0
    004120dfjne 0x4120fe
    004120e1mov rcx, rbp
    004120e4lea rdx, [rbp+48]
    004120e8mov r8, [rbp+96]
    004120eccall fn_411e20
    004120f1mov rcx, [rbp+40]
    004120f5mov rdx, [rbp+48]
    004120f9call fn_40c360
    004120fe
    004120feloc_4120fe:
    004120fenop
    004120ff
    004120ffloc_4120ff:
    004120fflea rcx, [rbp+48]
    00412103mov edx, 8
    00412108call fn_40bdd0
    0041210dlea rcx, [rbp+136]
    00412114mov edx, 2
    00412119call fn_40bdd0
    0041211emov rax, [rbp+40]
    00412122lea rsp, [rbp+112]
    00412126pop rbp
    00412127ret
    00411f40
    00412128
    00412128 48 8d 04 05 00 00 00 00 H.......
    00412130
    00412130fn_412130:
    00412130push rbp
    00412131push rbx
    00412132sub rsp, 40
    00412136mov rbp, rsp
    00412139mov rbx, rdx
    0041213clea rcx, [rbx+48]
    00412140mov edx, 8
    00412145call fn_40bdd0
    0041214alea rcx, [rbx+136]
    00412151mov edx, 2
    00412156call fn_40bdd0
    0041215blea rsp, [rbp+40]
    0041215fpop rbx
    00412160pop rbp
    00412161ret
    00412130
    00412162
    00412162 // align 0x10
    00412170
    00412170fn_412170:
    00412170push rbp
    00412171sub rsp, 608
    00412178mov rbp, rsp
    0041217bmov [rbp+32], rcx
    0041217fmov [rbp+56], 0
    00412187mov [rbp+48], 0
    0041218fmov [rbp+72], 0
    00412197nop
    00412198xor eax, eax
    0041219amov [rbp+40], rax
    0041219exor ecx, ecx
    004121a0lea rdx, [rbp+86]
    004121a4mov r8l, 261
    004121aacall GetModuleFileNameW
    004121aflea rcx, [rbp+56]
    004121b3lea rdx, [rbp+86]
    004121b7mov r8l, 261
    004121bdcall fn_40d7b0
    004121c2lea rcx, [rbp+48]
    004121c6mov rdx, [rbp+32]
    004121cacall fn_40d780
    004121cflea rcx, [rbp+72]
    004121d3mov rdx, [rbp+56]
    004121d7mov r8, [rbp+48]
    004121dbcall fn_411f40
    004121e0cmp [rbp+72], 0
    004121e5je 0x412204
    004121e7mov rcx, [rbp+72]
    004121ebcall fn_40d710
    004121f0mov rcx, rax
    004121f3xor edx, edx
    004121f5mov r8l, 2
    004121fbcall LoadLibraryExW
    00412200mov [rbp+40], rax
    00412204
    00412204loc_412204:
    00412204nop
    00412205lea rcx, [rbp+48]
    00412209mov edx, 2
    0041220ecall fn_40bdd0
    00412213lea rcx, [rbp+72]
    00412217call fn_40bcf0
    0041221cmov rax, [rbp+40]
    00412220lea rsp, [rbp+608]
    00412227pop rbp
    00412228ret
    00412170
    00412229
    00412229 48 8d 80 00 00 00 00 H......
    00412230
    00412230fn_412230:
    00412230push rbp
    00412231push rbx
    00412232sub rsp, 40
    00412236mov rbp, rsp
    00412239mov rbx, rdx
    0041223clea rcx, [rbx+48]
    00412240mov edx, 2
    00412245call fn_40bdd0
    0041224alea rcx, [rbx+72]
    0041224ecall fn_40bcf0
    00412253lea rsp, [rbp+40]
    00412257pop rbx
    00412258pop rbp
    00412259ret
    00412230
    0041225a
    0041225a // align 0x10
    00412260
    00412260fn_412260:
    00412260push rdi
    00412261push rsi
    00412262push rbx
    00412263sub rsp, 32
    00412267mov rbx, rcx
    0041226amov rsi, rdx
    0041226dmov rdi, [rip+0x46ddc]
    00412274test rdi, rdi
    00412277je 0x412295
    00412279
    00412279loc_412279:
    00412279mov rcx, rdi
    0041227ccall fn_410930
    00412281mov rcx, rax
    00412284mov rdx, rsi
    00412287call rbx
    00412289test al, al
    0041228bje 0x412296
    0041228dmov rdi, [rdi]
    00412290test rdi, rdi
    00412293jne 0x412279
    00412295
    00412295loc_412295:
    00412295nop
    00412296
    00412296loc_412296:
    00412296add rsp, 32
    0041229apop rbx
    0041229bpop rsi
    0041229cpop rdi
    0041229dret
    00412260
    0041229e
    0041229e // align 0x10
    004122a0
    004122a0fn_4122a0:
    004122a0sub rsp, 40
    004122a4call fn_4122c0
    004122a9add rsp, 40
    004122adret
    004122a0
    004122ae
    004122ae // align 0x10
    004122b0
    004122b0fn_4122b0:
    004122b0sub rsp, 40
    004122b4call fn_4122f0
    004122b9add rsp, 40
    004122bdret
    004122b0
    004122be
    004122be // align 0x10
    004122c0
    004122c0fn_4122c0:
    004122c0push rbx
    004122c1sub rsp, 32
    004122c5mov rbx, rcx
    004122c8mov ecx, 16
    004122cdcall fn_405700
    004122d2mov rcx, [rip+0x46d7f]
    004122d9mov [rax], rcx
    004122dcmov [rax+8], rbx
    004122e0mov [rip+0x46d71], rax
    004122e7add rsp, 32
    004122ebpop rbx
    004122ecret
    004122c0
    004122ed
    004122ed // align 0x10
    004122f0
    004122f0fn_4122f0:
    004122f0sub rsp, 40
    004122f4mov rax, [rip+0x46d5d]
    004122fbtest rax, rax
    004122feje 0x412321
    00412300cmp [rax+8], rcx
    00412304jne 0x412321
    00412306mov rcx, [rip+0x46d4b]
    0041230dmov rcx, [rcx]
    00412310mov [rip+0x46d41], rcx
    00412317mov rcx, rax
    0041231acall fn_405730
    0041231fjmp 0x412353
    00412321
    00412321loc_412321:
    00412321mov rdx, rax
    00412324test rdx, rdx
    00412327je 0x412352
    00412329
    00412329loc_412329:
    00412329mov r8, [rdx]
    0041232ctest r8, r8
    0041232fje 0x41234a
    00412331cmp [r8+8], rcx
    00412335jne 0x41234a
    00412337mov rax, r8
    0041233amov rcx, [r8]
    0041233dmov [rdx], rcx
    00412340mov rcx, rax
    00412343call fn_405730
    00412348jmp 0x412352
    0041234a
    0041234aloc_41234a:
    0041234amov rdx, [rdx]
    0041234dtest rdx, rdx
    00412350jne 0x412329
    00412352
    00412352loc_412352:
    00412352nop
    00412353
    00412353loc_412353:
    00412353add rsp, 40
    00412357ret
    004122f0
    00412358
    00412358 // align 0x10
    00412360
    00412360fn_412360:
    00412360push rbp
    00412361push rbx
    00412362sub rsp, 72
    00412366mov rbp, rsp
    00412369mov [rbp+40], rbp
    0041236dmov [rbp+96], rcx
    00412371mov rax, [rip+0x46ce0]
    00412378mov [rbp+56], rax
    0041237ccmp [rbp+56], 0
    00412381je 0x4123ab
    00412383
    00412383loc_412383:
    00412383nop
    00412384mov rcx, [rbp+96]
    00412388mov rbx, [rbp+56]
    0041238ccall [rbx+8]
    0041238fjmp 0x412399
    00412391
    00412391 90 90 e8 88 8d ff ff 90 ........
    00412399
    00412399loc_412399:
    00412399mov rax, [rbp+56]
    0041239dmov rax, [rax]
    004123a0mov [rbp+56], rax
    004123a4cmp [rbp+56], 0
    004123a9jne 0x412383
    004123ab
    004123abloc_4123ab:
    004123abnop
    004123aclea rsp, [rbp+72]
    004123b0pop rbx
    004123b1pop rbp
    004123b2ret
    00412360
    004123b3
    004123b3 48 8d 44 20 00 48 8d 04 05 00 00 00 00 H.D .H.......
    004123c0
    004123c0fn_4123c0:
    004123c0sub rsp, 40
    004123c4call fn_40b050
    004123c9add rsp, 40
    004123cdret
    004123c0
    004123ce
    004123ce // align 0x10
    004123d0
    004123d0fn_4123d0:
    004123d0mov rax, [rip+0x46c79]
    004123d7test rax, rax
    004123daje 0x4123e9
    004123dc
    004123dcloc_4123dc:
    004123dccmp rax, rcx
    004123dfje 0x4123fb
    004123e1mov rax, [rax]
    004123e4test rax, rax
    004123e7jne 0x4123dc
    004123e9
    004123e9loc_4123e9:
    004123e9nop
    004123eamov rax, [rip+0x46c5f]
    004123f1mov [rcx], rax
    004123f4mov [rip+0x46c55], rcx
    004123fb
    004123fbloc_4123fb:
    004123fbret
    004123d0
    004123fc
    004123fc // align 0x10
    00412400
    00412400fn_412400:
    00412400push rbp
    00412401sub rsp, 64
    00412405mov rbp, rsp
    00412408mov [rbp+40], rbp
    0041240cmov [rbp+80], rcx
    00412410nop
    00412411mov rax, [rbp+80]
    00412415mov rcx, [rax+8]
    00412419call fn_412360
    0041241enop
    0041241fmov rax, [rbp+80]
    00412423cmp rax, [rip+0x46c26]
    0041242ajne 0x41243c
    0041242cmov rax, [rbp+80]
    00412430mov rax, [rax]
    00412433mov [rip+0x46c16], rax
    0041243ajmp 0x41247e
    0041243c
    0041243cloc_41243c:
    0041243cmov rax, [rip+0x46c0d]
    00412443mov [rbp+56], rax
    00412447cmp [rbp+56], 0
    0041244cje 0x41247d
    0041244e
    0041244eloc_41244e:
    0041244emov rax, [rbp+56]
    00412452mov rax, [rax]
    00412455cmp rax, [rbp+80]
    00412459jne 0x41246b
    0041245bmov rax, [rbp+56]
    0041245fmov rcx, [rbp+80]
    00412463mov rcx, [rcx]
    00412466mov [rax], rcx
    00412469jmp 0x41247d
    0041246b
    0041246bloc_41246b:
    0041246bmov rax, [rbp+56]
    0041246fmov rax, [rax]
    00412472mov [rbp+56], rax
    00412476cmp [rbp+56], 0
    0041247bjne 0x41244e
    0041247d
    0041247dloc_41247d:
    0041247dnop
    0041247e
    0041247eloc_41247e:
    0041247elea rsp, [rbp+64]
    00412482pop rbp
    00412483ret
    00412400
    00412484
    00412484 48 8d 40 00 48 8d 04 05 00 00 00 00 H.@.H.......
    00412490
    00412490fn_412490:
    00412490push rbp
    00412491mov rbp, rsp
    00412494mov rax, [rdx+80]
    00412498cmp rax, [rip+0x46bb1]
    0041249fjne 0x4124b1
    004124a1mov rax, [rdx+80]
    004124a5mov rax, [rax]
    004124a8mov [rip+0x46ba1], rax
    004124afjmp 0x4124f3
    004124b1
    004124b1loc_4124b1:
    004124b1mov rax, [rip+0x46b98]
    004124b8mov [rdx+56], rax
    004124bccmp [rdx+56], 0
    004124c1je 0x4124f2
    004124c3
    004124c3loc_4124c3:
    004124c3mov rax, [rdx+56]
    004124c7mov rax, [rax]
    004124cacmp rax, [rdx+80]
    004124cejne 0x4124e0
    004124d0mov rax, [rdx+56]
    004124d4mov rcx, [rdx+80]
    004124d8mov rcx, [rcx]
    004124dbmov [rax], rcx
    004124dejmp 0x4124f2
    004124e0
    004124e0loc_4124e0:
    004124e0mov rax, [rdx+56]
    004124e4mov rax, [rax]
    004124e7mov [rdx+56], rax
    004124ebcmp [rdx+56], 0
    004124f0jne 0x4124c3
    004124f2
    004124f2loc_4124f2:
    004124f2nop
    004124f3
    004124f3loc_4124f3:
    004124f3mov rsp, rbp
    004124f6pop rbp
    004124f7ret
    00412490
    004124f8
    004124f8 // align 0x10
    00412500
    00412500fn_412500:
    00412500push rbp
    00412501push rbx
    00412502sub rsp, 56
    00412506mov rbp, rsp
    00412509mov rbx, rcx
    0041250ccmp [rcx], 0
    00412510je 0x41252e
    00412512mov rax, [rcx]
    00412515mov [rbp+40], rax
    00412519mov [rcx], 0
    00412520mov rcx, [rbp+40]
    00412524mov rax, [rbp+40]
    00412528mov rax, [rax]
    0041252bcall [rax+16]
    0041252e
    0041252eloc_41252e:
    0041252emov rax, rbx
    00412531lea rsp, [rbp+56]
    00412535pop rbx
    00412536pop rbp
    00412537ret
    00412500
    00412538
    00412538 // align 0x10
    00412540
    00412540fn_412540:
    00412540push rbp
    00412541push rsi
    00412542push rbx
    00412543sub rsp, 48
    00412547mov rbp, rsp
    0041254amov rbx, rcx
    0041254dmov rsi, rdx
    00412550mov rax, [rbx]
    00412553mov [rbp+40], rax
    00412557test rsi, rsi
    0041255aje 0x412565
    0041255cmov rcx, rsi
    0041255fmov rax, [rsi]
    00412562call [rax+8]
    00412565
    00412565loc_412565:
    00412565mov [rbx], rsi
    00412568cmp [rbp+40], 0
    0041256dje 0x41257d
    0041256fmov rcx, [rbp+40]
    00412573mov rax, [rbp+40]
    00412577mov rax, [rax]
    0041257acall [rax+16]
    0041257d
    0041257dloc_41257d:
    0041257dlea rsp, [rbp+48]
    00412581pop rbx
    00412582pop rsi
    00412583pop rbp
    00412584ret
    00412540
    00412585
    00412585 // align 0x10
    00412590
    00412590fn_412590:
    00412590push rbp
    00412591push rdi
    00412592push rsi
    00412593push rbx
    00412594sub rsp, 56
    00412598mov rbp, rsp
    0041259bmov rbx, rcx
    0041259emov rsi, rdx
    004125a1mov rdi, r8
    004125a4test rsi, rsi
    004125a7jne 0x4125b3
    004125a9mov rcx, rbx
    004125accall fn_412500
    004125b1jmp 0x4125fc
    004125b3
    004125b3loc_4125b3:
    004125b3mov [rbp+40], 0
    004125bblea rcx, [rbp+40]
    004125bfcall fn_412500
    004125c4mov rcx, rsi
    004125c7mov rdx, rdi
    004125camov r8, rax
    004125cdmov rax, [rsi]
    004125d0call [rax]
    004125d2test eax, eax
    004125d4je 0x4125e3
    004125d6mov cl, 23
    004125d8mov rdx, [rbp+88]
    004125dccall fn_4059c0
    004125e1jmp 0x4125fc
    004125e3
    004125e3loc_4125e3:
    004125e3cmp [rbx], 0
    004125e7je 0x4125f5
    004125e9mov rax, [rbx]
    004125ecmov rcx, rax
    004125efmov rax, [rax]
    004125f2call [rax+16]
    004125f5
    004125f5loc_4125f5:
    004125f5mov rax, [rbp+40]
    004125f9mov [rbx], rax
    004125fc
    004125fcloc_4125fc:
    004125fclea rsp, [rbp+56]
    00412600pop rbx
    00412601pop rsi
    00412602pop rdi
    00412603pop rbp
    00412604ret
    00412590
    00412605
    00412605 00 00 00 10 26 41 00 00 00 00 00 ....&A.....
    00412610 14 09 50 49 6e 73 74 49 74 65 6d 68 26 41 00 00 ..PInstItemh&A..
    00412620 00 00 00 02 00 00 00 00 30 26 41 00 00 00 00 00 ........0&A.....
    00412630 0d 16 54 49 6e 73 74 49 74 65 6d 2e 54 42 75 63 ..TInstItem.TBuc
    00412640 6b 65 74 41 72 72 61 79 f8 00 00 00 1f 00 00 00 ketArray........
    00412650 70 2d 41 00 00 00 00 00 01 00 00 00 00 00 00 00 p-A.............
    00412660 00 02 00 00 00 00 00 00 70 26 41 00 00 00 00 00 ........p&A.....
    00412670 0e 09 54 49 6e 73 74 49 74 65 6d 00 02 00 00 02 ..TInstItem.....
    00412680 00 00 00 28 26 41 00 00 00 00 00 10 00 00 00 00 ...(&A..........
    00412690 00 00 00 28 26 41 00 00 00 00 00 08 01 00 00 00 ...(&A..........
    004126a0 00 00 00 00 04 00 00 00 f8 10 40 00 00 00 00 00 ..........@.....
    004126b0 00 00 00 00 00 00 00 00 00 09 46 49 6e 73 74 61 ..........FInsta
    004126c0 6e 63 65 02 00 d0 24 40 00 00 00 00 00 08 00 00 nce...$@........
    004126d0 00 00 00 00 00 00 05 46 4c 6f 63 6b 02 00 28 26 .......FLock..(&
    004126e0 41 00 00 00 00 00 10 00 00 00 00 00 00 00 00 08 A...............
    004126f0 46 42 75 63 6b 65 74 73 02 00 28 26 41 00 00 00 FBuckets..(&A...
    00412700 00 00 08 01 00 00 00 00 00 00 00 0e 46 4d 65 74 ............FMet
    00412710 68 6f 64 42 75 63 6b 65 74 73 02 00 02 00 07 00 hodBuckets......
    00412720 09 30 2f 41 00 00 00 00 00 06 43 72 65 61 74 65 .0/A......Create
    00412730 00 00 08 26 41 00 00 00 00 00 00 02 00 08 70 30 ...&A.........p0
    00412740 41 00 00 00 00 00 07 44 65 73 74 72 6f 79 00 00 A......Destroy..
    00412750 00 00 00 00 00 00 00 00 00 02 00 08 90 30 41 00 .............0A.
    00412760 00 00 00 00 04 46 72 65 65 00 00 00 10 40 00 00 .....Free....@..
    00412770 00 00 00 00 02 00 08 c0 33 41 00 00 00 00 00 0f ........3A......
    00412780 52 65 67 69 73 74 65 72 57 65 61 6b 52 65 66 00 RegisterWeakRef.
    00412790 00 00 00 00 00 00 00 00 00 01 00 f8 10 40 00 00 .............@..
    004127a0 00 00 00 07 41 64 64 72 65 73 73 02 00 02 00 08 ....Address.....
    004127b0 f0 33 41 00 00 00 00 00 11 55 6e 72 65 67 69 73 .3A......Unregis
    004127c0 74 65 72 57 65 61 6b 52 65 66 00 00 00 00 00 00 terWeakRef......
    004127d0 00 00 00 00 01 00 f8 10 40 00 00 00 00 00 07 41 ........@......A
    004127e0 64 64 72 65 73 73 02 00 02 00 08 20 34 41 00 00 ddress..... 4A..
    004127f0 00 00 00 15 52 65 67 69 73 74 65 72 57 65 61 6b ....RegisterWeak
    00412800 4d 65 74 68 6f 64 52 65 66 00 00 00 00 00 00 00 MethodRef.......
    00412810 00 00 00 01 00 f8 10 40 00 00 00 00 00 07 41 64 .......@......Ad
    00412820 64 72 65 73 73 02 00 02 00 08 50 34 41 00 00 00 dress.....P4A...
    00412830 00 00 17 55 6e 72 65 67 69 73 74 65 72 57 65 61 ...UnregisterWea
    00412840 6b 4d 65 74 68 6f 64 52 65 66 00 00 00 00 00 00 kMethodRef......
    00412850 00 00 00 00 01 00 f8 10 40 00 00 00 00 00 07 41 ........@......A
    00412860 64 64 72 65 73 73 02 00 02 00 00 00 00 00 00 00 ddress..........
    00412870 78 28 41 00 00 00 00 00 0e 0b 54 49 6e 73 74 42 x(A.......TInstB
    00412880 75 63 6b 65 74 18 00 00 00 01 00 00 00 c0 2d 41 ucket.........-A
    00412890 00 00 00 00 00 10 00 00 00 00 00 00 00 00 03 00 ................
    004128a0 00 00 d0 24 40 00 00 00 00 00 00 00 00 00 00 00 ...$@...........
    004128b0 00 00 00 05 46 4c 6f 63 6b 02 00 78 10 40 00 00 ....FLock..x.@..
    004128c0 00 00 00 08 00 00 00 00 00 00 00 00 06 46 43 6f .............FCo
    004128d0 75 6e 74 02 00 c0 2d 41 00 00 00 00 00 10 00 00 unt...-A........
    004128e0 00 00 00 00 00 00 0a 46 49 6e 73 74 49 74 65 6d .......FInstItem
    004128f0 73 02 00 02 00 07 00 08 40 36 41 00 00 00 00 00 s.......@6A.....
    00412900 0a 49 6e 69 74 69 61 6c 69 7a 65 00 00 00 00 00 .Initialize.....
    00412910 00 00 00 00 00 00 02 00 08 e0 35 41 00 00 00 00 ..........5A....
    00412920 00 08 46 69 6e 61 6c 69 7a 65 00 00 00 00 00 00 ..Finalize......
    00412930 00 00 00 00 00 02 00 08 60 36 41 00 00 00 00 00 ........`6A.....
    00412940 04 4c 6f 63 6b 00 00 00 00 00 00 00 00 00 00 00 .Lock...........
    00412950 02 00 08 10 37 41 00 00 00 00 00 06 55 6e 6c 6f ....7A......Unlo
    00412960 63 6b 00 00 00 00 00 00 00 00 00 00 00 02 00 08 ck..............
    00412970 80 34 41 00 00 00 00 00 0b 41 64 64 49 6e 73 74 .4A......AddInst
    00412980 49 74 65 6d 00 00 00 00 00 00 00 00 00 00 02 00 Item............
    00412990 78 10 40 00 00 00 00 00 06 41 49 6e 64 65 78 02 x.@......AIndex.
    004129a0 00 00 08 26 41 00 00 00 00 00 05 41 49 74 65 6d ...&A......AItem
    004129b0 02 00 02 00 08 50 35 41 00 00 00 00 00 0c 46 69 .....P5A......Fi
    004129c0 6e 64 49 6e 73 74 49 74 65 6d 00 00 08 26 41 00 ndInstItem...&A.
    004129d0 00 00 00 00 02 00 f8 10 40 00 00 00 00 00 09 41 ........@......A
    004129e0 49 6e 73 74 61 6e 63 65 02 00 20 78 10 40 00 00 Instance.. x.@..
    004129f0 00 00 00 06 41 49 6e 64 65 78 02 00 02 00 08 80 ....AIndex......
    00412a00 36 41 00 00 00 00 00 0e 52 65 6d 6f 76 65 49 6e 6A......RemoveIn
    00412a10 73 74 49 74 65 6d 00 00 08 26 41 00 00 00 00 00 stItem...&A.....
    00412a20 01 00 f8 10 40 00 00 00 00 00 09 41 49 6e 73 74 ....@......AInst
    00412a30 61 6e 63 65 02 00 02 00 40 2a 41 00 00 00 00 00 ance....@*A.....
    00412a40 0d 10 3a 54 49 6e 73 74 48 61 73 68 4d 61 70 2e ..:TInstHashMap.
    00412a50 3a 31 78 12 00 00 c5 00 00 00 70 28 41 00 00 00 :1x.......p(A...
    00412a60 00 00 01 00 00 00 00 00 00 00 00 02 00 00 00 00 ................
    00412a70 78 2a 41 00 00 00 00 00 0e 0c 54 49 6e 73 74 48 x*A.......TInstH
    00412a80 61 73 68 4d 61 70 a0 12 00 00 01 00 00 00 38 2a ashMap........8*
    00412a90 41 00 00 00 00 00 20 00 00 00 00 00 00 00 00 06 A..... .........
    00412aa0 00 00 00 40 11 40 00 00 00 00 00 00 00 00 00 00 ...@.@..........
    00412ab0 00 00 00 00 0e 46 46 72 65 65 49 6e 73 74 49 74 .....FFreeInstIt
    00412ac0 65 6d 73 14 00 90 24 40 00 00 00 00 00 30 8b 40 ems...$@.....0.@
    00412ad0 00 00 00 00 00 00 00 90 11 40 00 00 00 00 00 08 .........@......
    00412ae0 00 00 00 00 00 00 00 00 0b 46 54 61 67 43 6f 75 .........FTagCou
    00412af0 6e 74 65 72 14 00 90 24 40 00 00 00 00 00 30 8b nter...$@.....0.
    00412b00 40 00 00 00 00 00 00 00 78 10 40 00 00 00 00 00 @.......x.@.....
    00412b10 10 00 00 00 00 00 00 00 00 0a 46 46 72 65 65 43 ..........FFreeC
    00412b20 6f 75 6e 74 02 00 d0 24 40 00 00 00 00 00 18 00 ount...$@.......
    00412b30 00 00 00 00 00 00 00 09 46 49 6e 69 74 4c 6f 63 ........FInitLoc
    00412b40 6b 02 00 38 2a 41 00 00 00 00 00 20 00 00 00 00 k..8*A..... ....
    00412b50 00 00 00 00 08 46 42 75 63 6b 65 74 73 02 00 00 .....FBuckets...
    00412b60 10 40 00 00 00 00 00 98 12 00 00 00 00 00 00 00 .@..............
    00412b70 0c 46 49 6e 69 74 69 61 6c 69 7a 65 64 02 00 02 .FInitialized...
    00412b80 00 08 00 08 f0 39 41 00 00 00 00 00 07 44 65 73 .....9A......Des
    00412b90 74 72 6f 79 00 00 00 00 00 00 00 00 00 00 01 00 troy............
    00412ba0 f8 10 40 00 00 00 00 00 08 49 6e 73 74 61 6e 63 ..@......Instanc
    00412bb0 65 02 00 02 00 08 10 39 41 00 00 00 00 00 0a 49 e......9A......I
    00412bc0 6e 69 74 69 61 6c 69 7a 65 00 00 00 00 00 00 00 nitialize.......
    00412bd0 00 00 00 00 02 00 08 b0 38 41 00 00 00 00 00 08 ........8A......
    00412be0 46 69 6e 61 6c 69 7a 65 00 00 00 00 00 00 00 00 Finalize........
    00412bf0 00 00 00 02 00 08 e0 3a 41 00 00 00 00 00 0f 52 .......:A......R
    00412c00 65 67 69 73 74 65 72 57 65 61 6b 52 65 66 00 00 egisterWeakRef..
    00412c10 00 00 00 00 00 00 00 00 02 00 f8 10 40 00 00 00 ............@...
    00412c20 00 00 07 41 64 64 72 65 73 73 02 00 00 f8 10 40 ...Address.....@
    00412c30 00 00 00 00 00 08 49 6e 73 74 61 6e 63 65 02 00 ......Instance..
    00412c40 02 00 08 20 3c 41 00 00 00 00 00 11 55 6e 72 65 ... <A......Unre
    00412c50 67 69 73 74 65 72 57 65 61 6b 52 65 66 00 00 00 gisterWeakRef...
    00412c60 00 00 00 00 00 00 00 02 00 f8 10 40 00 00 00 00 ...........@....
    00412c70 00 07 41 64 64 72 65 73 73 02 00 00 f8 10 40 00 ..Address.....@.
    00412c80 00 00 00 00 08 49 6e 73 74 61 6e 63 65 02 00 02 .....Instance...
    00412c90 00 08 20 3d 41 00 00 00 00 00 15 52 65 67 69 73 .. =A......Regis
    00412ca0 74 65 72 57 65 61 6b 4d 65 74 68 6f 64 52 65 66 terWeakMethodRef
    00412cb0 00 00 00 00 00 00 00 00 00 00 02 00 f8 10 40 00 ..............@.
    00412cc0 00 00 00 00 07 41 64 64 72 65 73 73 02 00 00 f8 .....Address....
    00412cd0 10 40 00 00 00 00 00 08 49 6e 73 74 61 6e 63 65 .@......Instance
    00412ce0 02 00 02 00 08 60 3e 41 00 00 00 00 00 17 55 6e .....`>A......Un
    00412cf0 72 65 67 69 73 74 65 72 57 65 61 6b 4d 65 74 68 registerWeakMeth
    00412d00 6f 64 52 65 66 00 00 00 00 00 00 00 00 00 00 02 odRef...........
    00412d10 00 f8 10 40 00 00 00 00 00 07 41 64 64 72 65 73 ...@......Addres
    00412d20 73 02 00 00 f8 10 40 00 00 00 00 00 08 49 6e 73 s.....@......Ins
    00412d30 74 61 6e 63 65 02 00 02 00 08 60 3f 41 00 00 00 tance.....`?A...
    00412d40 00 00 0c 49 73 52 65 67 69 73 74 65 72 65 64 00 ...IsRegistered.
    00412d50 00 00 10 40 00 00 00 00 00 01 00 f8 10 40 00 00 ...@.........@..
    00412d60 00 00 00 08 49 6e 73 74 61 6e 63 65 02 00 02 00 ....Instance....
    00412d70 78 2d 41 00 00 00 00 00 11 17 54 41 72 72 61 79 x-A.......TArray
    00412d80 3c 53 79 73 74 65 6d 2e 50 50 6f 69 6e 74 65 72 <System.PPointer
    00412d90 3e 08 00 00 00 00 00 00 00 00 00 00 00 ff ff ff >...............
    00412da0 ff e8 29 40 00 00 00 00 00 06 53 79 73 74 65 6d ..)@......System
    00412db0 e8 29 40 00 00 00 00 00 02 00 00 00 00 00 00 00 .)@.............
    00412dc0 c8 2d 41 00 00 00 00 00 11 18 54 41 72 72 61 79 .-A.......TArray
    00412dd0 3c 53 79 73 74 65 6d 2e 50 49 6e 73 74 49 74 65 <System.PInstIte
    00412de0 6d 3e 08 00 00 00 00 00 00 00 00 00 00 00 ff ff m>..............
    00412df0 ff ff 08 26 41 00 00 00 00 00 06 53 79 73 74 65 ...&A......Syste
    00412e00 6d 08 26 41 00 00 00 00 00 02 00 cc cc cc cc cc m.&A............
    00412e10
    00412e10fn_412e10:
    00412e10sub rsp, 40
    00412e14mov rax, [rcx]
    00412e17test rax, rax
    00412e1aje 0x412e4c
    00412e1cmov [rcx], 0
    00412e23mov rcx, rax
    00412e26cmp [rcx-12], 0
    00412e2ajle 0x412e4c
    00412e2cor r8l, -1
    00412e30mov edx, r8l
    00412e33lock xadd [rcx-12], r8l
    00412e39add edx, r8l
    00412e3ctest edx, edx
    00412e3ejne 0x412e4c
    00412e40sub rax, 16
    00412e44mov rcx, rax
    00412e47call fn_404120
    00412e4c
    00412e4cloc_412e4c:
    00412e4cadd rsp, 40
    00412e50ret
    00412e10
    00412e51
    00412e51 // align 0x10
    00412e60
    00412e60fn_412e60:
    00412e60push r13
    00412e62push rdi
    00412e63push rsi
    00412e64push rbx
    00412e65sub rsp, 40
    00412e69mov rbx, rcx
    00412e6cmov rsi, rdx
    00412e6fmov r13, [rbx]
    00412e72lea rax, [8*rsi+16]
    00412e7atest r13, r13
    00412e7djne 0x412e8c
    00412e7fmov rcx, rax
    00412e82call fn_4046b0
    00412e87mov r13, rax
    00412e8ajmp 0x412f04
    00412e8c
    00412e8cloc_412e8c:
    00412e8csub r13, 16
    00412e90mov rcx, r13
    00412e93mov rdi, [rcx+8]
    00412e97cmp [rcx+4], 1
    00412e9bjne 0x412ead
    00412e9dmov rcx, r13
    00412ea0mov rdx, rax
    00412ea3call fn_404340
    00412ea8mov r13, rax
    00412eabjmp 0x412ee3
    00412ead
    00412eadloc_412ead:
    00412eadmov rcx, rax
    00412eb0call fn_403d50
    00412eb5mov r13, rax
    00412eb8mov rax, rdi
    00412ebbcmp rax, rsi
    00412ebejle 0x412ec3
    00412ec0mov rax, rsi
    00412ec3
    00412ec3loc_412ec3:
    00412ec3mov rcx, [rbx]
    00412ec6lea rdx, [r13+16]
    00412ecamov r8, rax
    00412ecdadd r8, r8
    00412ed0add r8, r8
    00412ed3add r8, r8
    00412ed6call fn_405ac0
    00412edbmov rcx, [rbx]
    00412edecall fn_412e10
    00412ee3
    00412ee3loc_412ee3:
    00412ee3cmp rsi, rdi
    00412ee6jle 0x412f04
    00412ee8lea rcx, [r13+8*rdi+16]
    00412eedmov rdx, rsi
    00412ef0sub rdx, rdi
    00412ef3add rdx, rdx
    00412ef6add rdx, rdx
    00412ef9add rdx, rdx
    00412efcxor r8, r8
    00412effcall fn_4069b0
    00412f04
    00412f04loc_412f04:
    00412f04mov rax, r13
    00412f07mov [rax+4], 1
    00412f0emov [rax+8], rsi
    00412f12add r13, 16
    00412f16mov [rbx], r13
    00412f19add rsp, 40
    00412f1dpop rbx
    00412f1epop rsi
    00412f1fpop rdi
    00412f20pop r13
    00412f22ret
    00412e60
    00412f23
    00412f23 // align 0x10
    00412f30
    00412f30fn_412f30:
    00412f30push rbx
    00412f31sub rsp, 32
    00412f35mov ecx, 512
    00412f3acall fn_4046b0
    00412f3fmov rbx, rax
    00412f42call fn_409840
    00412f47mov [rbx+8], rax
    00412f4bmov rax, rbx
    00412f4eadd rsp, 32
    00412f52pop rbx
    00412f53ret
    00412f30
    00412f54
    00412f54 // align 0x10
    00412f60
    00412f60fn_412f60:
    00412f60mov r9l, 31
    00412f66lea rdx, [rcx+16]
    00412f6a
    00412f6aloc_412f6a:
    00412f6amov rax, [rdx]
    00412f6dtest rax, rax
    00412f70je 0x412f76
    00412f72mov rax, [rax-8]
    00412f76
    00412f76loc_412f76:
    00412f76xor ecx, ecx
    00412f78lea r10, [rax-1]
    00412f7cmov eax, ecx
    00412f7ecmp eax, r10l
    00412f81jg 0x412fb7
    00412f83sub r10l, ecx
    00412f86add r10l, 1
    00412f8a
    00412f8aloc_412f8a:
    00412f8amovsxd r8, eax
    00412f8dmov rcx, [rdx]
    00412f90mov rcx, [rcx+8*r8]
    00412f94test rcx, rcx
    00412f97je 0x412fab
    00412f99mov [rcx], 0
    00412fa0mov rcx, [rdx]
    00412fa3mov [rcx+8*r8], 0
    00412fab
    00412fabloc_412fab:
    00412fabadd eax, 1
    00412faesub r10l, 1
    00412fb2test r10l, r10l
    00412fb5jne 0x412f8a
    00412fb7
    00412fb7loc_412fb7:
    00412fb7nop
    00412fb8mov rax, [rdx+248]
    00412fbftest rax, rax
    00412fc2je 0x412fc8
    00412fc4mov rax, [rax-8]
    00412fc8
    00412fc8loc_412fc8:
    00412fc8xor ecx, ecx
    00412fcalea r10, [rax-1]
    00412fcemov eax, ecx
    00412fd0cmp eax, r10l
    00412fd3jg 0x413019
    00412fd5sub r10l, ecx
    00412fd8add r10l, 1
    00412fdc
    00412fdcloc_412fdc:
    00412fdcmovsxd r8, eax
    00412fdfmov rcx, [rdx+248]
    00412fe6mov rcx, [rcx+8*r8]
    00412featest rcx, rcx
    00412fedje 0x41300d
    00412fefmov [rcx], 0
    00412ff6mov [rcx+8], 0
    00412ffemov rcx, [rdx+248]
    00413005mov [rcx+8*r8], 0
    0041300d
    0041300dloc_41300d:
    0041300dadd eax, 1
    00413010sub r10l, 1
    00413014test r10l, r10l
    00413017jne 0x412fdc
    00413019
    00413019loc_413019:
    00413019nop
    0041301aadd rdx, 8
    0041301esub r9l, 1
    00413022test r9l, r9l
    00413025jne 0x412f6a
    0041302bnop
    0041302cret
    00412f60
    0041302d
    0041302d // align 0x10
    00413030
    00413030fn_413030:
    00413030sub rsp, 40
    00413034cmp [rip+0x52954], 0
    0041303cje 0x41304a
    0041303emov rcx, [rcx+8]
    00413042or edx, -1
    00413045call fn_409a50
    0041304a
    0041304aloc_41304a:
    0041304aadd rsp, 40
    0041304eret
    00413030
    0041304f
    0041304f // align 0x10
    00413050
    00413050fn_413050:
    00413050sub rsp, 40
    00413054cmp [rip+0x52934], 0
    0041305cje 0x413067
    0041305emov rcx, [rcx+8]
    00413062call fn_409c20
    00413067
    00413067loc_413067:
    00413067add rsp, 40
    0041306bret
    00413050
    0041306c
    0041306c // align 0x10
    00413070
    00413070fn_413070:
    00413070push rbx
    00413071sub rsp, 32
    00413075mov rbx, rcx
    00413078mov rcx, rbx
    0041307bcall fn_412f60
    00413080mov [rbx], 0
    00413087add rsp, 32
    0041308bpop rbx
    0041308cret
    00413070
    0041308d
    0041308d // align 0x10
    00413090
    00413090fn_413090:
    00413090push r13
    00413092push rdi
    00413093push rsi
    00413094push rbx
    00413095sub rsp, 40
    00413099mov rbx, rcx
    0041309ctest rbx, rbx
    0041309fsetne sil
    004130a3test sil, sil
    004130a6je 0x41310c
    004130a8mov rcx, rbx
    004130abcall fn_412f60
    004130b0mov r13l, 31
    004130b6lea rdi, [rbx+16]
    004130ba
    004130baloc_4130ba:
    004130bamov rcx, rdi
    004130bdcall fn_412e10
    004130c2add rdi, 8
    004130c6sub r13l, 1
    004130catest r13l, r13l
    004130cdjne 0x4130ba
    004130cfnop
    004130d0mov r13l, 31
    004130d6lea rdi, [rbx+264]
    004130dd
    004130ddloc_4130dd:
    004130ddmov rcx, rdi
    004130e0call fn_412e10
    004130e5add rdi, 8
    004130e9sub r13l, 1
    004130edtest r13l, r13l
    004130f0jne 0x4130dd
    004130f2nop
    004130f3mov rcx, [rbx+8]
    004130f7call fn_4098e0
    004130fcmov [rbx+8], 0
    00413104mov rcx, rbx
    00413107call fn_404120
    0041310c
    0041310cloc_41310c:
    0041310cmov eax, esi
    0041310fadd rsp, 40
    00413113pop rbx
    00413114pop rsi
    00413115pop rdi
    00413116pop r13
    00413118ret
    00413090
    00413119
    00413119 // align 0x10
    00413120
    00413120fn_413120:
    00413120push rbp
    00413121push rbx
    00413122sub rsp, 104
    00413126mov rbp, rsp
    00413129mov [rbp+40], rbp
    0041312dmov [rbp+128], rcx
    00413134mov [rbp+136], rdx
    0041313bmov [rbp+144], r8
    00413142mov rax, [rbp+144]
    00413149mov rcx, rax
    0041314cshr rcx, 13
    00413150shr rax, 5
    00413154lea rax, [rcx+rax]
    00413158mov ecx, 31
    0041315dcqo
    0041315fidiv rcx
    00413162mov [rbp+88], edx
    00413165mov rcx, [rbp+128]
    0041316ccall fn_413030
    00413171nop
    00413172mov rax, [rbp+136]
    00413179movsxd rcx, [rbp+88]
    0041317dmov rax, [rax+8*rcx]
    00413181mov [rbp+72], rax
    00413185mov rax, [rbp+72]
    00413189mov [rbp+64], rax
    0041318dcmp [rbp+64], 0
    00413192je 0x4131a0
    00413194mov rax, [rbp+64]
    00413198mov rax, [rax-8]
    0041319cmov [rbp+64], rax
    004131a0
    004131a0loc_4131a0:
    004131a0xor eax, eax
    004131a2mov rcx, [rbp+64]
    004131a6lea rcx, [rcx-1]
    004131aamov [rbp+92], eax
    004131adcmp [rbp+92], ecx
    004131b0jg 0x4131fb
    004131b2sub ecx, eax
    004131b4add ecx, 1
    004131b7
    004131b7loc_4131b7:
    004131b7movsxd rax, [rbp+92]
    004131bbmov rdx, [rbp+136]
    004131c2movsxd r8, [rbp+88]
    004131c6mov rdx, [rdx+8*r8]
    004131cacmp [rdx+8*rax], 0
    004131cfjne 0x4131f0
    004131d1mov rcx, [rbp+136]
    004131d8movsxd rdx, [rbp+88]
    004131dcmov rcx, [rcx+8*rdx]
    004131e0mov rdx, [rbp+144]
    004131e7mov [rcx+8*rax], rdx
    004131ebjmp 0x41328e
    004131f0
    004131f0loc_4131f0:
    004131f0add [rbp+92], 1
    004131f4sub ecx, 1
    004131f7test ecx, ecx
    004131f9jne 0x4131b7
    004131fb
    004131fbloc_4131fb:
    004131fbnop
    004131fcmovsxd rbx, [rbp+88]
    00413200mov rax, [rbp+136]
    00413207mov rax, [rax+8*rbx]
    0041320bmov [rbp+56], rax
    0041320fmov rax, [rbp+56]
    00413213mov [rbp+48], rax
    00413217cmp [rbp+48], 0
    0041321cje 0x41322a
    0041321emov rax, [rbp+48]
    00413222mov rax, [rax-8]
    00413226mov [rbp+48], rax
    0041322a
    0041322aloc_41322a:
    0041322amov eax, [rbp+48]
    0041322dmov [rbp+92], eax
    00413230cmp [rbp+92], 0
    00413234jne 0x41324d
    00413236mov rax, [rbp+136]
    0041323dlea rcx, [rax+8*rbx]
    00413241mov edx, 10
    00413246call fn_412e60
    0041324bjmp 0x413265
    0041324d
    0041324dloc_41324d:
    0041324dmov rax, [rbp+136]
    00413254lea rcx, [rax+8*rbx]
    00413258mov edx, [rbp+92]
    0041325badd edx, edx
    0041325dmovsxd rdx, edx
    00413260call fn_412e60
    00413265
    00413265loc_413265:
    00413265mov rax, [rbp+136]
    0041326cmov rax, [rax+8*rbx]
    00413270movsxd rcx, [rbp+92]
    00413274mov rdx, [rbp+144]
    0041327bmov [rax+8*rcx], rdx
    0041327fnop
    00413280mov rcx, [rbp+128]
    00413287call fn_413050
    0041328cjmp 0x413299
    0041328e
    0041328eloc_41328e:
    0041328exor ecx, ecx
    00413290mov rdx, [rbp+40]
    00413294call fn_4132a0
    00413299
    00413299loc_413299:
    00413299lea rsp, [rbp+104]
    0041329dpop rbx
    0041329epop rbp
    0041329fret
    00413120
    004132a0
    004132a0fn_4132a0:
    004132a0push rbp
    004132a1sub rsp, 32
    004132a5mov rbp, rsp
    004132a8mov rcx, [rdx+128]
    004132afcall fn_413050
    004132b4lea rsp, [rbp+32]
    004132b8pop rbp
    004132b9ret
    004132a0
    004132ba
    004132ba // align 0x10
    004132c0
    004132c0fn_4132c0:
    004132c0push rbp
    004132c1sub rsp, 80
    004132c5mov rbp, rsp
    004132c8mov [rbp+40], rbp
    004132ccmov [rbp+96], rcx
    004132d0mov [rbp+104], rdx
    004132d4mov [rbp+112], r8
    004132d8mov rax, [rbp+112]
    004132dcmov rcx, rax
    004132dfshr rcx, 13
    004132e3shr rax, 5
    004132e7lea rax, [rcx+rax]
    004132ebmov ecx, 31
    004132f0cqo
    004132f2idiv rcx
    004132f5mov [rbp+72], edx
    004132f8mov rcx, [rbp+96]
    004132fccall fn_413030
    00413301nop
    00413302mov rax, [rbp+104]
    00413306movsxd rcx, [rbp+72]
    0041330amov rax, [rax+8*rcx]
    0041330emov [rbp+56], rax
    00413312mov rax, [rbp+56]
    00413316mov [rbp+48], rax
    0041331acmp [rbp+48], 0
    0041331fje 0x41332d
    00413321mov rax, [rbp+48]
    00413325mov rax, [rax-8]
    00413329mov [rbp+48], rax
    0041332d
    0041332dloc_41332d:
    0041332dxor eax, eax
    0041332fmov rcx, [rbp+48]
    00413333lea rcx, [rcx-1]
    00413337mov [rbp+76], eax
    0041333acmp [rbp+76], ecx
    0041333djg 0x41337f
    0041333fsub ecx, eax
    00413341add ecx, 1
    00413344
    00413344loc_413344:
    00413344movsxd rax, [rbp+76]
    00413348mov rdx, [rbp+104]
    0041334cmovsxd r8, [rbp+72]
    00413350mov rdx, [rdx+8*r8]
    00413354mov rdx, [rdx+8*rax]
    00413358cmp rdx, [rbp+112]
    0041335cjne 0x413374
    0041335emov rcx, [rbp+104]
    00413362movsxd rdx, [rbp+72]
    00413366mov rcx, [rcx+8*rdx]
    0041336amov [rcx+8*rax], 0
    00413372jmp 0x41338c
    00413374
    00413374loc_413374:
    00413374add [rbp+76], 1
    00413378sub ecx, 1
    0041337btest ecx, ecx
    0041337djne 0x413344
    0041337f
    0041337floc_41337f:
    0041337fnop
    00413380nop
    00413381mov rcx, [rbp+96]
    00413385call fn_413050
    0041338ajmp 0x413397
    0041338c
    0041338cloc_41338c:
    0041338cxor ecx, ecx
    0041338emov rdx, [rbp+40]
    00413392call fn_4133a0
    00413397
    00413397loc_413397:
    00413397lea rsp, [rbp+80]
    0041339bpop rbp
    0041339cret
    004132c0
    0041339d
    0041339d 48 8b c0 H..
    004133a0
    004133a0fn_4133a0:
    004133a0push rbp
    004133a1sub rsp, 32
    004133a5mov rbp, rsp
    004133a8mov rcx, [rdx+96]
    004133accall fn_413050
    004133b1lea rsp, [rbp+32]
    004133b5pop rbp
    004133b6ret
    004133a0
    004133b7
    004133b7 // align 0x10
    004133c0
    004133c0fn_4133c0:
    004133c0sub rsp, 40
    004133c4mov rax, rcx
    004133c7lea r8, [rcx+16]
    004133cbmov r9, rdx
    004133cemov rcx, rax
    004133d1mov rdx, r8
    004133d4mov r8, r9
    004133d7call fn_413120
    004133dcadd rsp, 40
    004133e0ret
    004133c0
    004133e1
    004133e1 // align 0x10
    004133f0
    004133f0fn_4133f0:
    004133f0sub rsp, 40
    004133f4mov rax, rcx
    004133f7lea r8, [rcx+16]
    004133fbmov r9, rdx
    004133femov rcx, rax
    00413401mov rdx, r8
    00413404mov r8, r9
    00413407call fn_4132c0
    0041340cadd rsp, 40
    00413410ret
    004133f0
    00413411
    00413411 // align 0x10
    00413420
    00413420fn_413420:
    00413420sub rsp, 40
    00413424mov rax, rcx
    00413427lea r8, [rcx+264]
    0041342emov r9, rdx
    00413431mov rcx, rax
    00413434mov rdx, r8
    00413437mov r8, r9
    0041343acall fn_413120
    0041343fadd rsp, 40
    00413443ret
    00413420
    00413444
    00413444 // align 0x10
    00413450
    00413450fn_413450:
    00413450sub rsp, 40
    00413454mov rax, rcx
    00413457lea r8, [rcx+264]
    0041345emov r9, rdx
    00413461mov rcx, rax
    00413464mov rdx, r8
    00413467mov r8, r9
    0041346acall fn_4132c0
    0041346fadd rsp, 40
    00413473ret
    00413450
    00413474
    00413474 // align 0x10
    00413480
    00413480fn_413480:
    00413480push r13
    00413482push rdi
    00413483push rsi
    00413484push rbx
    00413485sub rsp, 40
    00413489mov rbx, rcx
    0041348cmov esi, edx
    0041348emov rdi, r8
    00413491mov rax, [rbx+16]
    00413495test rax, rax
    00413498je 0x41349e
    0041349amov rax, [rax-8]
    0041349e
    0041349eloc_41349e:
    0041349etest rax, rax
    004134a1jne 0x4134b3
    004134a3lea rcx, [rbx+16]
    004134a7mov edx, 10
    004134accall fn_412e60
    004134b1jmp 0x4134e5
    004134b3
    004134b3loc_4134b3:
    004134b3mov rax, [rbx+16]
    004134b7test rax, rax
    004134baje 0x4134c0
    004134bcmov rax, [rax-8]
    004134c0
    004134c0loc_4134c0:
    004134c0movsxd rcx, [rbx+8]
    004134c4cmp rcx, rax
    004134c7jne 0x4134e5
    004134c9mov rax, [rbx+16]
    004134cdtest rax, rax
    004134d0je 0x4134d6
    004134d2mov rax, [rax-8]
    004134d6
    004134d6loc_4134d6:
    004134d6lea rcx, [rbx+16]
    004134damov rdx, rax
    004134ddadd rdx, rdx
    004134e0call fn_412e60
    004134e5
    004134e5loc_4134e5:
    004134e5mov eax, [rbx+8]
    004134e8cmp esi, eax
    004134eajl 0x4134f9
    004134ecmov rcx, [rbx+16]
    004134f0movsxd rax, eax
    004134f3mov [rcx+8*rax], rdi
    004134f7jmp 0x413535
    004134f9
    004134f9loc_4134f9:
    004134f9movsxd r13, esi
    004134fcmov rcx, [rbx+16]
    00413500lea rcx, [rcx+8*r13]
    00413504mov rdx, [rbx+16]
    00413508mov r8l, esi
    0041350badd r8l, 1
    0041350fmovsxd r8, r8l
    00413512lea rdx, [rdx+8*r8]
    00413516mov r8l, eax
    00413519sub r8l, esi
    0041351cadd r8l, r8l
    0041351fadd r8l, r8l
    00413522add r8l, r8l
    00413525movsxd r8, r8l
    00413528call fn_405ac0
    0041352dmov rax, [rbx+16]
    00413531mov [rax+8*r13], rdi
    00413535
    00413535loc_413535:
    00413535lea rax, [rbx+8]
    00413539add [rax], 1
    0041353cadd rsp, 40
    00413540pop rbx
    00413541pop rsi
    00413542pop rdi
    00413543pop r13
    00413545ret
    00413480
    00413546
    00413546 // align 0x10
    00413550
    00413550fn_413550:
    00413550push rbp
    00413551push rsi
    00413552push rbx
    00413553sub rsp, 16
    00413557mov rbp, rsp
    0041355axor eax, eax
    0041355cmov r10l, [rcx+8]
    00413560test r10l, r10l
    00413563jle 0x4135c4
    00413565xor r9, r9
    00413568sub r10l, 1
    0041356ccmp r9l, r10l
    0041356fjg 0x4135be
    00413571
    00413571loc_413571:
    00413571mov r11l, r9l
    00413574add r11l, r10l
    00413577shr r11l, 1
    0041357bmovsxd rsi, r11l
    0041357emov rbx, [rcx+16]
    00413582mov rbx, [rbx+8*rsi]
    00413586mov [rbp+8], rbx
    0041358amov rbx, [rbp+8]
    0041358emov rbx, [rbx]
    00413591sub rbx, rdx
    00413594test rbx, rbx
    00413597jge 0x4135a2
    00413599mov r9l, r11l
    0041359cadd r9l, 1
    004135a0jmp 0x4135b9
    004135a2
    004135a2loc_4135a2:
    004135a2mov r10l, r11l
    004135a5sub r10l, 1
    004135a9test rbx, rbx
    004135acjne 0x4135b9
    004135aemov rax, [rcx+16]
    004135b2mov rax, [rax+8*rsi]
    004135b6mov r9l, r11l
    004135b9
    004135b9loc_4135b9:
    004135b9cmp r9l, r10l
    004135bcjle 0x413571
    004135be
    004135beloc_4135be:
    004135benop
    004135bfmov [r8], r9l
    004135c2jmp 0x4135cb
    004135c4
    004135c4loc_4135c4:
    004135c4mov [r8], 0
    004135cb
    004135cbloc_4135cb:
    004135cblea rsp, [rbp+16]
    004135cfpop rbx
    004135d0pop rsi
    004135d1pop rbp
    004135d2ret
    00413550
    004135d3
    004135d3 // align 0x10
    004135e0
    004135e0fn_4135e0:
    004135e0push rdi
    004135e1push rsi
    004135e2push rbx
    004135e3sub rsp, 32
    004135e7mov rbx, rcx
    004135eaxor eax, eax
    004135ecmov edi, [rbx+8]
    004135efsub edi, 1
    004135f2mov esi, eax
    004135f4cmp esi, edi
    004135f6jg 0x413617
    004135f8sub edi, eax
    004135faadd edi, 1
    004135fd
    004135fdloc_4135fd:
    004135fdmov rax, [rbx+16]
    00413601movsxd rcx, esi
    00413604mov rcx, [rax+8*rcx]
    00413608call fn_413090
    0041360dadd esi, 1
    00413610sub edi, 1
    00413613test edi, edi
    00413615jne 0x4135fd
    00413617
    00413617loc_413617:
    00413617nop
    00413618mov [rbx+8], 0
    0041361fmov rcx, [rbx]
    00413622call fn_4098e0
    00413627lea rcx, [rbx+16]
    0041362bcall fn_412e10
    00413630add rsp, 32
    00413634pop rbx
    00413635pop rsi
    00413636pop rdi
    00413637ret
    004135e0
    00413638
    00413638 // align 0x10
    00413640
    00413640fn_413640:
    00413640push rbx
    00413641sub rsp, 32
    00413645mov rbx, rcx
    00413648call fn_409840
    0041364dmov [rbx], rax
    00413650mov [rbx+8], 0
    00413657add rsp, 32
    0041365bpop rbx
    0041365cret
    00413640
    0041365d
    0041365d // align 0x10
    00413660
    00413660fn_413660:
    00413660sub rsp, 40
    00413664cmp [rip+0x52324], 0
    0041366cje 0x413679
    0041366emov rcx, [rcx]
    00413671or edx, -1
    00413674call fn_409a50
    00413679
    00413679loc_413679:
    00413679add rsp, 40
    0041367dret
    00413660
    0041367e
    0041367e // align 0x10
    00413680
    00413680fn_413680:
    00413680push rbp
    00413681push rsi
    00413682push rbx
    00413683sub rsp, 48
    00413687mov rbp, rsp
    0041368amov rbx, rcx
    0041368dmov rcx, rbx
    00413690lea r8, [rbp+44]
    00413694call fn_413550
    00413699mov rsi, rax
    0041369ctest rsi, rsi
    0041369fje 0x4136f6
    004136a1mov eax, [rbp+44]
    004136a4cmp eax, [rbx+8]
    004136a7jge 0x4136f6
    004136a9mov eax, [rbx+8]
    004136acmov ecx, eax
    004136aesub ecx, 1
    004136b1cmp [rbp+44], ecx
    004136b4jge 0x4136ef
    004136b6mov rcx, [rbx+16]
    004136bamov edx, [rbp+44]
    004136bdadd edx, 1
    004136c0movsxd rdx, edx
    004136c3lea rcx, [rcx+8*rdx]
    004136c7mov rdx, [rbx+16]
    004136cbmovsxd r8, [rbp+44]
    004136cflea rdx, [rdx+8*r8]
    004136d3mov r8l, eax
    004136d6sub r8l, [rbp+44]
    004136dasub r8l, 1
    004136deadd r8l, r8l
    004136e1add r8l, r8l
    004136e4add r8l, r8l
    004136e7movsxd r8, r8l
    004136eacall fn_405ac0
    004136ef
    004136efloc_4136ef:
    004136eflea rax, [rbx+8]
    004136f3sub [rax], 1
    004136f6
    004136f6loc_4136f6:
    004136f6mov rax, rsi
    004136f9lea rsp, [rbp+48]
    004136fdpop rbx
    004136fepop rsi
    004136ffpop rbp
    00413700ret
    00413680
    00413701
    00413701 // align 0x10
    00413710
    00413710fn_413710:
    00413710sub rsp, 40
    00413714cmp [rip+0x52274], 0
    0041371cje 0x413726
    0041371emov rcx, [rcx]
    00413721call fn_409c20
    00413726
    00413726loc_413726:
    00413726add rsp, 40
    0041372aret
    00413710
    0041372b
    0041372b // align 0x10
    00413730
    00413730fn_413730:
    00413730sub rsp, 40
    00413734mov [rsp+48], rcx
    00413739mov rcx, [rsp+48]
    0041373emov r8l, 1
    00413744mov eax, r8l
    00413747lock xadd [rcx+16], r8l
    0041374dadd eax, r8l
    00413750cmp eax, 512
    00413756jg 0x4137d2
    00413758mov rax, [rsp+48]
    0041375dmov r8l, 1
    00413763mov rcx, r8
    00413766lock xadd [rax+8], r8
    0041376cadd rcx, r8
    0041376f
    0041376floc_41376f:
    0041376fmov rax, [rsp+48]
    00413774mov r8, [rax]
    00413777mov rax, 0xffffffffffff
    00413781mov r9, r8
    00413784and r9, rax
    00413787mov rax, 0x800000000000
    00413791mov r10, r8
    00413794and r10, rax
    00413797lea rax, [r10-1]
    0041379bnot rax
    0041379eor r9, rax
    004137a1mov [rdx], r9
    004137a4mov r9, [rsp+48]
    004137a9mov rax, 0xffffffffffff
    004137b3mov r10, rdx
    004137b6and r10, rax
    004137b9mov rax, rcx
    004137bcshl rax, 48
    004137c0or r10, rax
    004137c3mov rax, r8
    004137c6lock cmpxchg [r9], r10
    004137cbcmp rax, r8
    004137cejne 0x41376f
    004137d0jmp 0x4137e7
    004137d2
    004137d2loc_4137d2:
    004137d2mov rax, [rsp+48]
    004137d7or ecx, -1
    004137dalock xadd [rax+16], ecx
    004137dfmov rcx, rdx
    004137e2call fn_413090
    004137e7
    004137e7loc_4137e7:
    004137e7add rsp, 40
    004137ebret
    00413730
    004137ec
    004137ec // align 0x10
    004137f0
    004137f0fn_4137f0:
    004137f0push rbx
    004137f1sub rsp, 32
    004137f5mov rbx, rdx
    004137f8call fn_413810
    004137fdtest rax, rax
    00413800jne 0x413807
    00413802call fn_412f30
    00413807
    00413807loc_413807:
    00413807mov [rax], rbx
    0041380aadd rsp, 32
    0041380epop rbx
    0041380fret
    004137f0
    00413810
    00413810fn_413810:
    00413810mov [rsp+8], rcx
    00413815mov rax, [rsp+8]
    0041381amov ecx, 1
    0041381fmov rdx, rcx
    00413822lock xadd [rax+8], rcx
    00413828add rdx, rcx
    0041382b
    0041382bloc_41382b:
    0041382bmov rax, [rsp+8]
    00413830mov r8, [rax]
    00413833mov rax, 0xffffffffffff
    0041383dmov rcx, r8
    00413840and rcx, rax
    00413843mov rax, 0x800000000000
    0041384dmov r9, r8
    00413850and r9, rax
    00413853lea rax, [r9-1]
    00413857not rax
    0041385aor rcx, rax
    0041385dtest rcx, rcx
    00413860je 0x413891
    00413862mov rax, [rcx]
    00413865mov r9, [rsp+8]
    0041386amov r10, 0xffffffffffff
    00413874mov r11, rax
    00413877and r11, r10
    0041387amov rax, rdx
    0041387dshl rax, 48
    00413881or r11, rax
    00413884mov rax, r8
    00413887lock cmpxchg [r9], r11
    0041388ccmp rax, r8
    0041388fjne 0x41382b
    00413891
    00413891loc_413891:
    00413891nop
    00413892test rcx, rcx
    00413895je 0x4138a4
    00413897mov rax, [rsp+8]
    0041389cor edx, -1
    0041389flock xadd [rax+16], edx
    004138a4
    004138a4loc_4138a4:
    004138a4mov rax, rcx
    004138a7ret
    00413810
    004138a8
    004138a8 // align 0x10
    004138b0
    004138b0fn_4138b0:
    004138b0push rdi
    004138b1push rsi
    004138b2push rbx
    004138b3sub rsp, 32
    004138b7mov rbx, rcx
    004138bacmp [rbx+4760], 0
    004138c1je 0x413905
    004138c3mov edi, 197
    004138c8lea rsi, [rbx+32]
    004138cc
    004138ccloc_4138cc:
    004138ccmov rcx, rsi
    004138cfcall fn_4135e0
    004138d4add rsi, 24
    004138d8sub edi, 1
    004138dbtest edi, edi
    004138ddjne 0x4138cc
    004138dfnop
    004138e0
    004138e0loc_4138e0:
    004138e0mov rcx, rbx
    004138e3call fn_413810
    004138e8mov rcx, rax
    004138ebcall fn_413090
    004138f0test al, al
    004138f2jne 0x4138e0
    004138f4mov rax, [rbx+24]
    004138f8test rax, rax
    004138fbje 0x413905
    004138fdmov rcx, rax
    00413900call fn_4098e0
    00413905
    00413905loc_413905:
    00413905add rsp, 32
    00413909pop rbx
    0041390apop rsi
    0041390bpop rdi
    0041390cret
    004138b0
    0041390d
    0041390d // align 0x10
    00413910
    00413910fn_413910:
    00413910push rbp
    00413911push rbx
    00413912sub rsp, 88
    00413916mov rbp, rsp
    00413919mov [rbp+40], rbp
    0041391dmov [rbp+112], rcx
    00413921mov rax, [rbp+112]
    00413925cmp [rax+4760], 0
    0041392cjne 0x4139c8
    00413932mov rax, [rbp+112]
    00413936cmp [rax+24], 0
    0041393bjne 0x41396a
    0041393dcall fn_409840
    00413942mov [rbp+64], rax
    00413946mov rcx, [rbp+112]
    0041394axor eax, eax
    0041394cmov rdx, [rbp+64]
    00413950lock cmpxchg [rcx+24], rdx
    00413956mov [rbp+64], rax
    0041395acmp [rbp+64], 0
    0041395fje 0x41396a
    00413961mov rcx, [rbp+64]
    00413965call fn_4098e0
    0041396a
    0041396aloc_41396a:
    0041396amov rax, [rbp+112]
    0041396emov rcx, [rax+24]
    00413972or edx, -1
    00413975call fn_409a50
    0041397anop
    0041397bmov rax, [rbp+112]
    0041397fcmp [rax+4760], 0
    00413986jne 0x4139ba
    00413988mov ebx, 197
    0041398dmov rax, [rbp+112]
    00413991lea rax, [rax+32]
    00413995mov [rbp+56], rax
    00413999
    00413999loc_413999:
    00413999mov rcx, [rbp+56]
    0041399dcall fn_413640
    004139a2add [rbp+56], 24
    004139a7sub ebx, 1
    004139aatest ebx, ebx
    004139acjne 0x413999
    004139aenop
    004139afmov rax, [rbp+112]
    004139b3mov [rax+4760], 1
    004139ba
    004139baloc_4139ba:
    004139banop
    004139bbmov rax, [rbp+112]
    004139bfmov rcx, [rax+24]
    004139c3call fn_409c20
    004139c8
    004139c8loc_4139c8:
    004139c8lea rsp, [rbp+88]
    004139ccpop rbx
    004139cdpop rbp
    004139ceret
    00413910
    004139cf
    004139cf // align 0x10
    004139d0
    004139d0fn_4139d0:
    004139d0push rbp
    004139d1sub rsp, 32
    004139d5mov rbp, rsp
    004139d8mov rax, [rdx+112]
    004139dcmov rcx, [rax+24]
    004139e0call fn_409c20
    004139e5lea rsp, [rbp+32]
    004139e9pop rbp
    004139earet
    004139d0
    004139eb
    004139eb // align 0x10
    004139f0
    004139f0fn_4139f0:
    004139f0push rbp
    004139f1sub rsp, 64
    004139f5mov rbp, rsp
    004139f8mov [rbp+40], rbp
    004139fcmov [rbp+80], rcx
    00413a00mov [rbp+88], rdx
    00413a04mov rax, [rbp+80]
    00413a08cmp [rax+4760], 0
    00413a0fje 0x413aa6
    00413a15mov rax, [rbp+88]
    00413a19mov rcx, rax
    00413a1cshr rcx, 13
    00413a20shr rax, 5
    00413a24lea rax, [rcx+rax]
    00413a28mov ecx, 197
    00413a2dcqo
    00413a2fidiv rcx
    00413a32mov [rbp+60], edx
    00413a35movsxd rax, [rbp+60]
    00413a39mov [rbp+32], rax
    00413a3dmov rax, [rbp+80]
    00413a41mov rcx, [rbp+32]
    00413a45lea rcx, [rcx+2*rcx]
    00413a49lea rcx, [rax+8*rcx+32]
    00413a4ecall fn_413660
    00413a53nop
    00413a54mov rax, [rbp+80]
    00413a58mov rcx, [rbp+32]
    00413a5clea rcx, [rcx+2*rcx]
    00413a60lea rcx, [rax+8*rcx+32]
    00413a65mov rdx, [rbp+88]
    00413a69call fn_413680
    00413a6emov [rbp+48], rax
    00413a72nop
    00413a73mov rax, [rbp+80]
    00413a77movsxd rcx, [rbp+60]
    00413a7blea rcx, [rcx+2*rcx]
    00413a7flea rcx, [rax+8*rcx+32]
    00413a84call fn_413710
    00413a89cmp [rbp+48], 0
    00413a8eje 0x413aa6
    00413a90mov rcx, [rbp+48]
    00413a94call fn_413070
    00413a99mov rcx, [rbp+80]
    00413a9dmov rdx, [rbp+48]
    00413aa1call fn_413730
    00413aa6
    00413aa6loc_413aa6:
    00413aa6lea rsp, [rbp+64]
    00413aaapop rbp
    00413aabret
    004139f0
    00413aac
    00413aac 48 8d 40 00 H.@.
    00413ab0
    00413ab0fn_413ab0:
    00413ab0push rbp
    00413ab1sub rsp, 32
    00413ab5mov rbp, rsp
    00413ab8mov rax, [rdx+80]
    00413abcmovsxd rcx, [rdx+60]
    00413ac0lea rcx, [rcx+2*rcx]
    00413ac4lea rcx, [rax+8*rcx+32]
    00413ac9call fn_413710
    00413acelea rsp, [rbp+32]
    00413ad2pop rbp
    00413ad3ret
    00413ab0
    00413ad4
    00413ad4 // align 0x10
    00413ae0
    00413ae0fn_413ae0:
    00413ae0push rbp
    00413ae1sub rsp, 80
    00413ae5mov rbp, rsp
    00413ae8mov [rbp+40], rbp
    00413aecmov [rbp+96], rcx
    00413af0mov [rbp+104], rdx
    00413af4mov [rbp+112], r8
    00413af8mov rax, [rbp+96]
    00413afccmp [rax+4760], 0
    00413b03jne 0x413b0e
    00413b05mov rcx, [rbp+96]
    00413b09call fn_413910
    00413b0e
    00413b0eloc_413b0e:
    00413b0emov rax, [rbp+112]
    00413b12mov rcx, rax
    00413b15shr rcx, 13
    00413b19shr rax, 5
    00413b1dlea rax, [rcx+rax]
    00413b21mov ecx, 197
    00413b26cqo
    00413b28idiv rcx
    00413b2bmov [rbp+76], edx
    00413b2emovsxd rax, [rbp+76]
    00413b32mov [rbp+32], rax
    00413b36mov rax, [rbp+96]
    00413b3amov rcx, [rbp+32]
    00413b3elea rcx, [rcx+2*rcx]
    00413b42lea rcx, [rax+8*rcx+32]
    00413b47call fn_413660
    00413b4cnop
    00413b4dmov rax, [rbp+96]
    00413b51mov rcx, [rbp+32]
    00413b55lea rcx, [rcx+2*rcx]
    00413b59lea rcx, [rax+8*rcx+32]
    00413b5emov rdx, [rbp+112]
    00413b62lea r8, [rbp+72]
    00413b66call fn_413550
    00413b6bmov [rbp+64], rax
    00413b6fcmp [rbp+64], 0
    00413b74jne 0x413bac
    00413b76mov rcx, [rbp+96]
    00413b7amov rdx, [rbp+112]
    00413b7ecall fn_4137f0
    00413b83mov [rbp+56], rax
    00413b87mov rax, [rbp+96]
    00413b8bmov rcx, [rbp+32]
    00413b8flea rcx, [rcx+2*rcx]
    00413b93lea rcx, [rax+8*rcx+32]
    00413b98mov edx, [rbp+72]
    00413b9bmov r8, [rbp+56]
    00413b9fcall fn_413480
    00413ba4mov rax, [rbp+56]
    00413ba8mov [rbp+64], rax
    00413bac
    00413bacloc_413bac:
    00413bacnop
    00413badmov rax, [rbp+96]
    00413bb1movsxd rcx, [rbp+76]
    00413bb5lea rcx, [rcx+2*rcx]
    00413bb9lea rcx, [rax+8*rcx+32]
    00413bbecall fn_413710
    00413bc3mov rax, [rbp+64]
    00413bc7mov [rbp+48], rax
    00413bcbmov rcx, [rbp+48]
    00413bcfmov rax, [rbp+48]
    00413bd3lea rdx, [rax+16]
    00413bd7mov r8, [rbp+104]
    00413bdbcall fn_413120
    00413be0lea rsp, [rbp+80]
    00413be4pop rbp
    00413be5ret
    00413ae0
    00413be6
    00413be6 48 90 48 8d 04 05 00 00 00 00 H.H.......
    00413bf0
    00413bf0fn_413bf0:
    00413bf0push rbp
    00413bf1sub rsp, 32
    00413bf5mov rbp, rsp
    00413bf8mov rax, [rdx+96]
    00413bfcmovsxd rcx, [rdx+76]
    00413c00lea rcx, [rcx+2*rcx]
    00413c04lea rcx, [rax+8*rcx+32]
    00413c09call fn_413710
    00413c0elea rsp, [rbp+32]
    00413c12pop rbp
    00413c13ret
    00413bf0
    00413c14
    00413c14 // align 0x10
    00413c20
    00413c20fn_413c20:
    00413c20push rbp
    00413c21sub rsp, 80
    00413c25mov rbp, rsp
    00413c28mov [rbp+40], rbp
    00413c2cmov [rbp+96], rcx
    00413c30mov [rbp+104], rdx
    00413c34mov [rbp+112], r8
    00413c38mov rax, [rbp+96]
    00413c3ccmp [rax+4760], 0
    00413c43je 0x413ce5
    00413c49mov rax, [rbp+112]
    00413c4dmov rcx, rax
    00413c50shr rcx, 13
    00413c54shr rax, 5
    00413c58lea rax, [rcx+rax]
    00413c5cmov ecx, 197
    00413c61cqo
    00413c63idiv rcx
    00413c66mov [rbp+76], edx
    00413c69movsxd rax, [rbp+76]
    00413c6dmov [rbp+32], rax
    00413c71mov rax, [rbp+96]
    00413c75mov rcx, [rbp+32]
    00413c79lea rcx, [rcx+2*rcx]
    00413c7dlea rcx, [rax+8*rcx+32]
    00413c82call fn_413660
    00413c87nop
    00413c88mov rax, [rbp+96]
    00413c8cmov rcx, [rbp+32]
    00413c90lea rcx, [rcx+2*rcx]
    00413c94lea rcx, [rax+8*rcx+32]
    00413c99mov rdx, [rbp+112]
    00413c9dlea r8, [rbp+72]
    00413ca1call fn_413550
    00413ca6mov [rbp+64], rax
    00413caanop
    00413cabmov rax, [rbp+96]
    00413cafmovsxd rcx, [rbp+76]
    00413cb3lea rcx, [rcx+2*rcx]
    00413cb7lea rcx, [rax+8*rcx+32]
    00413cbccall fn_413710
    00413cc1cmp [rbp+64], 0
    00413cc6je 0x413ce5
    00413cc8mov rax, [rbp+64]
    00413cccmov [rbp+56], rax
    00413cd0mov rcx, [rbp+56]
    00413cd4mov rax, [rbp+56]
    00413cd8lea rdx, [rax+16]
    00413cdcmov r8, [rbp+104]
    00413ce0call fn_4132c0
    00413ce5
    00413ce5loc_413ce5:
    00413ce5lea rsp, [rbp+80]
    00413ce9pop rbp
    00413cearet
    00413c20
    00413ceb
    00413ceb 48 8d 44 20 00 H.D .
    00413cf0
    00413cf0fn_413cf0:
    00413cf0push rbp
    00413cf1sub rsp, 32
    00413cf5mov rbp, rsp
    00413cf8mov rax, [rdx+96]
    00413cfcmovsxd rcx, [rdx+76]
    00413d00lea rcx, [rcx+2*rcx]
    00413d04lea rcx, [rax+8*rcx+32]
    00413d09call fn_413710
    00413d0elea rsp, [rbp+32]
    00413d12pop rbp
    00413d13ret
    00413cf0
    00413d14
    00413d14 // align 0x10
    00413d20
    00413d20fn_413d20:
    00413d20push rbp
    00413d21sub rsp, 80
    00413d25mov rbp, rsp
    00413d28mov [rbp+40], rbp
    00413d2cmov [rbp+96], rcx
    00413d30mov [rbp+104], rdx
    00413d34mov [rbp+112], r8
    00413d38mov rax, [rbp+96]
    00413d3ccmp [rax+4760], 0
    00413d43jne 0x413d4e
    00413d45mov rcx, [rbp+96]
    00413d49call fn_413910
    00413d4e
    00413d4eloc_413d4e:
    00413d4emov rax, [rbp+112]
    00413d52mov rcx, rax
    00413d55shr rcx, 13
    00413d59shr rax, 5
    00413d5dlea rax, [rcx+rax]
    00413d61mov ecx, 197
    00413d66cqo
    00413d68idiv rcx
    00413d6bmov [rbp+76], edx
    00413d6emovsxd rax, [rbp+76]
    00413d72mov [rbp+32], rax
    00413d76mov rax, [rbp+96]
    00413d7amov rcx, [rbp+32]
    00413d7elea rcx, [rcx+2*rcx]
    00413d82lea rcx, [rax+8*rcx+32]
    00413d87call fn_413660
    00413d8cnop
    00413d8dmov rax, [rbp+96]
    00413d91mov rcx, [rbp+32]
    00413d95lea rcx, [rcx+2*rcx]
    00413d99lea rcx, [rax+8*rcx+32]
    00413d9emov rdx, [rbp+112]
    00413da2lea r8, [rbp+72]
    00413da6call fn_413550
    00413dabmov [rbp+64], rax
    00413dafcmp [rbp+64], 0
    00413db4jne 0x413dec
    00413db6mov rcx, [rbp+96]
    00413dbamov rdx, [rbp+112]
    00413dbecall fn_4137f0
    00413dc3mov [rbp+56], rax
    00413dc7mov rax, [rbp+96]
    00413dcbmov rcx, [rbp+32]
    00413dcflea rcx, [rcx+2*rcx]
    00413dd3lea rcx, [rax+8*rcx+32]
    00413dd8mov edx, [rbp+72]
    00413ddbmov r8, [rbp+56]
    00413ddfcall fn_413480
    00413de4mov rax, [rbp+56]
    00413de8mov [rbp+64], rax
    00413dec
    00413decloc_413dec:
    00413decnop
    00413dedmov rax, [rbp+96]
    00413df1movsxd rcx, [rbp+76]
    00413df5lea rcx, [rcx+2*rcx]
    00413df9lea rcx, [rax+8*rcx+32]
    00413dfecall fn_413710
    00413e03mov rax, [rbp+64]
    00413e07mov [rbp+48], rax
    00413e0bmov rcx, [rbp+48]
    00413e0fmov rax, [rbp+48]
    00413e13lea rdx, [rax+264]
    00413e1amov r8, [rbp+104]
    00413e1ecall fn_413120
    00413e23lea rsp, [rbp+80]
    00413e27pop rbp
    00413e28ret
    00413d20
    00413e29
    00413e29 48 8d 80 00 00 00 00 H......
    00413e30
    00413e30fn_413e30:
    00413e30push rbp
    00413e31sub rsp, 32
    00413e35mov rbp, rsp
    00413e38mov rax, [rdx+96]
    00413e3cmovsxd rcx, [rdx+76]
    00413e40lea rcx, [rcx+2*rcx]
    00413e44lea rcx, [rax+8*rcx+32]
    00413e49call fn_413710
    00413e4elea rsp, [rbp+32]
    00413e52pop rbp
    00413e53ret
    00413e30
    00413e54
    00413e54 // align 0x10
    00413e60
    00413e60fn_413e60:
    00413e60push rbp
    00413e61sub rsp, 80
    00413e65mov rbp, rsp
    00413e68mov [rbp+40], rbp
    00413e6cmov [rbp+96], rcx
    00413e70mov [rbp+104], rdx
    00413e74mov [rbp+112], r8
    00413e78mov rax, [rbp+96]
    00413e7ccmp [rax+4760], 0
    00413e83je 0x413f28
    00413e89mov rax, [rbp+112]
    00413e8dmov rcx, rax
    00413e90shr rcx, 13
    00413e94shr rax, 5
    00413e98lea rax, [rcx+rax]
    00413e9cmov ecx, 197
    00413ea1cqo
    00413ea3idiv rcx
    00413ea6mov [rbp+76], edx
    00413ea9movsxd rax, [rbp+76]
    00413eadmov [rbp+32], rax
    00413eb1mov rax, [rbp+96]
    00413eb5mov rcx, [rbp+32]
    00413eb9lea rcx, [rcx+2*rcx]
    00413ebdlea rcx, [rax+8*rcx+32]
    00413ec2call fn_413660
    00413ec7nop
    00413ec8mov rax, [rbp+96]
    00413eccmov rcx, [rbp+32]
    00413ed0lea rcx, [rcx+2*rcx]
    00413ed4lea rcx, [rax+8*rcx+32]
    00413ed9mov rdx, [rbp+112]
    00413eddlea r8, [rbp+72]
    00413ee1call fn_413550
    00413ee6mov [rbp+64], rax
    00413eeanop
    00413eebmov rax, [rbp+96]
    00413eefmovsxd rcx, [rbp+76]
    00413ef3lea rcx, [rcx+2*rcx]
    00413ef7lea rcx, [rax+8*rcx+32]
    00413efccall fn_413710
    00413f01cmp [rbp+64], 0
    00413f06je 0x413f28
    00413f08mov rax, [rbp+64]
    00413f0cmov [rbp+56], rax
    00413f10mov rcx, [rbp+56]
    00413f14mov rax, [rbp+56]
    00413f18lea rdx, [rax+264]
    00413f1fmov r8, [rbp+104]
    00413f23call fn_4132c0
    00413f28
    00413f28loc_413f28:
    00413f28lea rsp, [rbp+80]
    00413f2cpop rbp
    00413f2dret
    00413e60
    00413f2e
    00413f2e 48 90 H.
    00413f30
    00413f30fn_413f30:
    00413f30push rbp
    00413f31sub rsp, 32
    00413f35mov rbp, rsp
    00413f38mov rax, [rdx+96]
    00413f3cmovsxd rcx, [rdx+76]
    00413f40lea rcx, [rcx+2*rcx]
    00413f44lea rcx, [rax+8*rcx+32]
    00413f49call fn_413710
    00413f4elea rsp, [rbp+32]
    00413f52pop rbp
    00413f53ret
    00413f30
    00413f54
    00413f54 // align 0x10
    00413f60
    00413f60fn_413f60:
    00413f60push rbp
    00413f61sub rsp, 80
    00413f65mov rbp, rsp
    00413f68mov [rbp+40], rbp
    00413f6cmov [rbp+96], rcx
    00413f70mov [rbp+104], rdx
    00413f74mov [rbp+75], 0
    00413f78mov rax, [rbp+96]
    00413f7ccmp [rax+4760], 0
    00413f83je 0x41400c
    00413f89mov rax, [rbp+104]
    00413f8dmov rcx, rax
    00413f90shr rcx, 13
    00413f94shr rax, 5
    00413f98lea rax, [rcx+rax]
    00413f9cmov ecx, 197
    00413fa1cqo
    00413fa3idiv rcx
    00413fa6mov [rbp+76], edx
    00413fa9movsxd rax, [rbp+76]
    00413fadmov [rbp+32], rax
    00413fb1mov rax, [rbp+96]
    00413fb5mov rcx, [rbp+32]
    00413fb9lea rcx, [rcx+2*rcx]
    00413fbdlea rcx, [rax+8*rcx+32]
    00413fc2call fn_413660
    00413fc7nop
    00413fc8mov rax, [rbp+96]
    00413fccmov rcx, [rbp+32]
    00413fd0lea rcx, [rcx+2*rcx]
    00413fd4lea rcx, [rax+8*rcx+32]
    00413fd9mov rdx, [rbp+104]
    00413fddlea r8, [rbp+68]
    00413fe1call fn_413550
    00413fe6mov [rbp+56], rax
    00413feanop
    00413febmov rax, [rbp+96]
    00413fefmovsxd rcx, [rbp+76]
    00413ff3lea rcx, [rcx+2*rcx]
    00413ff7lea rcx, [rax+8*rcx+32]
    00413ffccall fn_413710
    00414001cmp [rbp+56], 0
    00414006setne al
    00414009mov [rbp+75], al
    0041400c
    0041400cloc_41400c:
    0041400cmovzx rax, [rbp+75]
    00414011lea rsp, [rbp+80]
    00414015pop rbp
    00414016ret
    00413f60