Function at 0x46a0e0
Capabilities:
Enumerate pe sections
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe14
push esi
xor eax, eax
mov byte [ebp - 0x19a], al
lea ecx, [ebp - 0x19a]
call fcn.0045fa20
mov ecx, eax
call fcn.0042de70
mov dword [ebp - 0x374], eax
xor ecx, ecx
mov byte [ebp - 0x19b], cl
lea ecx, [ebp - 0x19b]
call fcn.004539a0
mov ecx, eax
call fcn.0042de50
mov dword [ebp - 0x684], eax
xor edx, edx
mov byte [ebp - 0x19], dl
lea ecx, [ebp - 0x19]
call fcn.004560a0
mov ecx, eax
call fcn.0042de50
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x684]
mov dword [ebp - 0x374], eax
cmp dword [ebp - 0x374], 0
je 0x46a173
xor ecx, ecx
mov byte [ebp - 0x1a], cl
lea ecx, [ebp - 0x1a]
call fcn.0045c7e0
mov ecx, eax
call fcn.0042de30
mov dword [ebp - 0x698], eax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1b0], edx
xor eax, eax
mov byte [ebp - 0x1b], al
lea ecx, [ebp - 0x1b]
call fcn.00457690
mov ecx, eax
call fcn.0042de30
mov dword [ebp - 0x378], eax
xor ecx, ecx
mov byte [ebp - 0x1c], cl
lea ecx, [ebp - 0x1c]
call fcn.00456a30
mov ecx, eax
call fcn.0042de30
mov dword [ebp - 0x69c], eax
xor edx, edx
mov byte [ebp - 0x1d], dl
lea ecx, [ebp - 0x1d]
call fcn.00455290
mov ecx, eax
call fcn.0042de10
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0x378], eax
cmp dword [ebp - 0x378], 0
je 0x46a1f9
xor ecx, ecx
mov byte [ebp - 0x1e], cl
lea ecx, [ebp - 0x1e]
call fcn.0045c5a0
mov ecx, eax
call fcn.0042de10
mov dword [ebp - 0x394], eax
mov edx, dword [ebp - 0x1b0]
mov eax, dword [ebp - 0x1b0]
add eax, dword [edx + 0x3c]
mov dword [ebp - 8], eax
xor ecx, ecx
mov byte [ebp - 0x1f], cl
lea ecx, [ebp - 0x1f]
call fcn.0045bc50
mov ecx, eax
call fcn.0042de10
mov dword [ebp - 0x1f4], eax
xor edx, edx
mov byte [ebp - 0x20], dl
lea ecx, [ebp - 0x20]
call fcn.00457f00
mov ecx, eax
call fcn.0042ddf0
mov dword [ebp - 0x398], eax
xor eax, eax
mov byte [ebp - 0x21], al
lea ecx, [ebp - 0x21]
call fcn.0045a990
mov ecx, eax
call fcn.0042ddf0
mov dword [ebp - 0x39c], eax
mov ecx, dword [ebp - 0x398]
mov dword [ebp - 0x1f4], ecx
cmp dword [ebp - 0x1f4], 0
je 0x46a288
xor edx, edx
mov byte [ebp - 0x22], dl
lea ecx, [ebp - 0x22]
call fcn.00462180
mov ecx, eax
call fcn.0042ddd0
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x1b0]
mov ecx, dword [eax + 0x3c]
mov edx, dword [ebp - 0x1b0]
lea eax, [edx + ecx + 0xf8]
mov dword [ebp - 0x254], eax
xor ecx, ecx
mov byte [ebp - 0x23], cl
lea ecx, [ebp - 0x23]
call fcn.00456010
mov ecx, eax
call fcn.0042ddd0
mov dword [ebp - 0x1f8], eax
xor edx, edx
mov byte [ebp - 0x24], dl
lea ecx, [ebp - 0x24]
call fcn.0045f2d0
mov ecx, eax
call fcn.0042ddd0
mov dword [ebp - 0x3a0], eax
xor eax, eax
mov byte [ebp - 0x25], al
lea ecx, [ebp - 0x25]
call fcn.0045d320
mov ecx, eax
call fcn.0042ddb0
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x1f8], ecx
cmp dword [ebp - 0x1f8], 0
je 0x46a321
xor edx, edx
mov byte [ebp - 0x26], dl
lea ecx, [ebp - 0x26]
call fcn.0045ffc0
mov ecx, eax
call fcn.0042ddb0
mov dword [ebp - 0x3a4], eax
cmp dword [ebp - 0x1b0], 0
je 0x46a339
cmp dword [ebp - 8], 0
je 0x46a339
cmp dword [ebp - 0x254], 0
jne 0x46a340
xor al, al
jmp 0x46df69
xor eax, eax
mov byte [ebp - 0x27], al
lea ecx, [ebp - 0x27]
call fcn.0045ef70
mov ecx, eax
call fcn.0042dd90
mov dword [ebp - 0x1fc], eax
xor ecx, ecx
mov byte [ebp - 0x28], cl
lea ecx, [ebp - 0x28]
call fcn.0045e8b0
mov ecx, eax
call fcn.0042dd90
mov dword [ebp - 0x3a8], eax
xor edx, edx
mov byte [ebp - 0x29], dl
lea ecx, [ebp - 0x29]
call fcn.0045f900
mov ecx, eax
call fcn.0042dd90
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 0
je 0x46a3bd
xor ecx, ecx
mov byte [ebp - 0x2a], cl
lea ecx, [ebp - 0x2a]
call fcn.00452b90
mov ecx, eax
call fcn.0042dd70
mov dword [ebp - 0x3ac], eax
xor edx, edx
mov byte [ebp - 0x2b], dl
lea ecx, [ebp - 0x2b]
call fcn.00461640
mov ecx, eax
call fcn.0042dd70
mov dword [ebp - 0x200], eax
xor eax, eax
mov byte [ebp - 0x2c], al
lea ecx, [ebp - 0x2c]
call fcn.00457960
mov ecx, eax
call fcn.0042dd70
mov dword [ebp - 0x3b0], eax
xor ecx, ecx
mov byte [ebp - 0x2d], cl
lea ecx, [ebp - 0x2d]
call fcn.00453d00
mov ecx, eax
call fcn.0042dd50
mov dword [ebp - 0x3b4], eax
mov edx, dword [ebp - 0x3b0]
mov dword [ebp - 0x200], edx
cmp dword [ebp - 0x200], 0
je 0x46a43a
xor eax, eax
mov byte [ebp - 0x2e], al
lea ecx, [ebp - 0x2e]
call fcn.00458020
mov ecx, eax
call fcn.0042dd50
mov dword [ebp - 0x3b4], eax
xor ecx, ecx
mov byte [ebp - 0x2f], cl
lea ecx, [ebp - 0x2f]
call fcn.0045fbd0
mov ecx, eax
call fcn.00452900
mov edx, dword [eax*4 + 0x5c0668]
call edx
test eax, eax
jne 0x46a490
xor eax, eax
mov byte [ebp - 0x30], al
xor ecx, ecx
mov byte [ebp - 0x31], cl
lea ecx, [ebp - 0x30]
call fcn.00453250
mov ecx, eax
call fcn.004528e0
push eax
lea ecx, [ebp - 0x31]
call fcn.00456d90
mov ecx, eax
call fcn.004528c0
mov edx, dword [eax*4 + 0x5c0690]
call edx
add esp, 4
lea eax, [ebp - 0xe14]
push eax
push pe_nt_image_headers32
call fcn.00469950
nop
xor ecx, ecx
mov byte [ebp - 0x32], cl
lea ecx, [ebp - 0x32]
call fcn.00460c20
mov ecx, eax
call fcn.0042dcf0
mov dword [ebp - 0x204], eax
xor edx, edx
mov byte [ebp - 0x33], dl
lea ecx, [ebp - 0x33]
call fcn.0045c6c0
mov ecx, eax
call fcn.0042dcf0
mov dword [ebp - 0x3b8], eax
xor eax, eax
mov byte [ebp - 0x34], al
lea ecx, [ebp - 0x34]
call fcn.0045a3f0
mov ecx, eax
call fcn.0042dcd0
mov dword [ebp - 0x3bc], eax
mov ecx, dword [ebp - 0x3b8]
mov dword [ebp - 0x204], ecx
cmp dword [ebp - 0x204], 0
je 0x46a51f
xor edx, edx
mov byte [ebp - 0x35], dl
lea ecx, [ebp - 0x35]
call fcn.0045e670
mov ecx, eax
call fcn.0042dcd0
mov dword [ebp - 0x3bc], eax
mov eax, 0x66
mov word [ebp - 0x390], ax
mov ecx, 0x5b
mov word [ebp - 0x38e], cx
mov edx, 0x7a
mov word [ebp - 0x38c], dx
mov eax, 0x6f
mov word [ebp - 0x38a], ax
mov ecx, 0x54
mov word [ebp - 0x388], cx
mov edx, 0x73
mov word [ebp - 0x386], dx
mov eax, 0x68
mov word [ebp - 0x384], ax
mov ecx, 0x4d
mov word [ebp - 0x382], cx
mov edx, 0x6c
mov word [ebp - 0x380], dx
mov eax, 0x61
mov word [ebp - 0x37e], ax
mov ecx, 0x46
mov word [ebp - 0x37c], cx
mov edx, 0x75
mov word [ebp - 0x37a], dx
xor eax, eax
mov byte [ebp - 0x36], al
lea ecx, [ebp - 0x36]
call fcn.004542a0
mov ecx, eax
call fcn.0042dc30
mov dword [ebp - 0x208], eax
xor ecx, ecx
mov byte [ebp - 0x37], cl
lea ecx, [ebp - 0x37]
call fcn.00459f70
mov ecx, eax
call fcn.0042dc30
mov dword [ebp - 0x3c0], eax
xor edx, edx
mov byte [ebp - 0x38], dl
lea ecx, [ebp - 0x38]
call fcn.004558c0
mov ecx, eax
call fcn.0042dc10
mov dword [ebp - 0x3c4], eax
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x208], 0
je 0x46a62c
xor ecx, ecx
mov byte [ebp - 0x39], cl
lea ecx, [ebp - 0x39]
call fcn.0045fe10
mov ecx, eax
call fcn.0042dc10
mov dword [ebp - 0x3c4], eax
mov dx, word [0x51562c]
mov word [ebp - 0x6b4], dx
xor eax, eax
mov dword [ebp - 0x6b2], eax
mov dword [ebp - 0x6ae], eax
mov dword [ebp - 0x6aa], eax
mov dword [ebp - 0x6a6], eax
mov dword [ebp - 0x6a2], eax
mov word [ebp - 0x69e], ax
xor ecx, ecx
mov byte [ebp - 0x3a], cl
lea ecx, [ebp - 0x3a]
call fcn.0045d950
mov ecx, eax
call fcn.0042dbf0
mov dword [ebp - 0x20c], eax
xor edx, edx
mov byte [ebp - 0x3b], dl
lea ecx, [ebp - 0x3b]
call fcn.00455d40
mov ecx, eax
call fcn.0042dbf0
mov dword [ebp - 0x3c8], eax
xor eax, eax
mov byte [ebp - 0x3c], al
lea ecx, [ebp - 0x3c]
call fcn.00453370
mov ecx, eax
call fcn.0042dbf0
mov dword [ebp - 0x3cc], eax
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x20c], ecx
cmp dword [ebp - 0x20c], 0
je 0x46a6de
xor edx, edx
mov byte [ebp - 0x3d], dl
lea ecx, [ebp - 0x3d]
call fcn.00452cb0
mov ecx, eax
call fcn.0042dbd0
mov dword [ebp - 0x3cc], eax
mov dword [ebp - 0x3d8], 0xa
xor eax, eax
mov byte [ebp - 0x3e], al
lea ecx, [ebp - 0x3e]
call fcn.0045c360
mov ecx, eax
call fcn.0042dbd0
mov dword [ebp - 0x210], eax
xor ecx, ecx
mov byte [ebp - 0x3f], cl
lea ecx, [ebp - 0x3f]
call fcn.00457570
mov ecx, eax
call fcn.0042dbd0
mov dword [ebp - 0x3d0], eax
xor edx, edx
mov byte [ebp - 0x40], dl
lea ecx, [ebp - 0x40]
call fcn.0045ad80
mov ecx, eax
call fcn.0042dbb0
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x3d0]
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0
je 0x46a765
xor ecx, ecx
mov byte [ebp - 0x41], cl
lea ecx, [ebp - 0x41]
call fcn.00461400
mov ecx, eax
call fcn.0042dbb0
mov dword [ebp - 0x3d4], eax
mov dword [ebp - 0x1b4], 0
jmp 0x46a780
mov edx, dword [ebp - 0x1b4]
add edx, 1
mov dword [ebp - 0x1b4], edx
mov eax, dword [ebp - 0x1b4]
cmp eax, dword [ebp - 0x3d8]
jge 0x46a9e6
xor ecx, ecx
mov byte [ebp - 0x42], cl
lea ecx, [ebp - 0x42]
call fcn.00458a00
mov ecx, eax
call fcn.0042db90
mov dword [ebp - 0x214], eax
xor edx, edx
mov byte [ebp - 0x43], dl
lea ecx, [ebp - 0x43]
call fcn.0045eb80
mov ecx, eax
call fcn.0042db90
mov dword [ebp - 0x3dc], eax
xor eax, eax
mov byte [ebp - 0x44], al
lea ecx, [ebp - 0x44]
call fcn.004561c0
mov ecx, eax
call fcn.0042db90
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x214], ecx
cmp dword [ebp - 0x214], 0
je 0x46a80f
xor edx, edx
mov byte [ebp - 0x45], dl
lea ecx, [ebp - 0x45]
call fcn.0045a6c0
mov ecx, eax
call fcn.0042db70
mov dword [ebp - 0x3e0], eax
mov eax, dword [ebp - 0x1b4]
add eax, 2
mov dword [ebp - 0x3ec], eax
xor ecx, ecx
mov byte [ebp - 0x46], cl
lea ecx, [ebp - 0x46]
call fcn.0045af30
mov ecx, eax
call fcn.0042db70
mov dword [ebp - 0x218], eax
xor edx, edx
mov byte [ebp - 0x47], dl
lea ecx, [ebp - 0x47]
call fcn.00457cc0
mov ecx, eax
call fcn.0042db50
mov dword [ebp - 0x3e4], eax
xor eax, eax
mov byte [ebp - 0x48], al
lea ecx, [ebp - 0x48]
call fcn.00460b90
mov ecx, eax
call fcn.0042db50
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x218], ecx
cmp dword [ebp - 0x218], 0
je 0x46a89b
xor edx, edx
mov byte [ebp - 0x49], dl
lea ecx, [ebp - 0x49]
call fcn.0045e0d0
mov ecx, eax
call fcn.0042db30
mov dword [ebp - 0x3e8], eax
mov eax, dword [ebp - 0x3ec]
mov cx, word [ebp + eax*2 - 0x390]
mov word [ebp - 0x220], cx
xor edx, edx
mov word [ebp - 0x21e], dx
xor eax, eax
mov byte [ebp - 0x4a], al
lea ecx, [ebp - 0x4a]
call fcn.0045b290
mov ecx, eax
call fcn.0042db30
mov dword [ebp - 0x21c], eax
xor ecx, ecx
mov byte [ebp - 0x4b], cl
lea ecx, [ebp - 0x4b]
call fcn.00458b20
mov ecx, eax
call fcn.0042db30
mov dword [ebp - 0x3f0], eax
xor edx, edx
mov byte [ebp - 0x4c], dl
lea ecx, [ebp - 0x4c]
call fcn.00461d00
mov ecx, eax
call fcn.0042db10
mov dword [ebp - 0x3f4], eax
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x46a936
xor ecx, ecx
mov byte [ebp - 0x4d], cl
lea ecx, [ebp - 0x4d]
call fcn.00460a70
mov ecx, eax
call fcn.0042db10
mov dword [ebp - 0x3f4], eax
xor edx, edx
mov byte [ebp - 0x4e], dl
lea eax, [ebp - 0x220]
push eax
lea ecx, [ebp - 0x6b4]
push ecx
lea ecx, [ebp - 0x4e]
call fcn.00458380
mov ecx, eax
call fcn.004528a0
mov edx, dword [eax*4 + 0x5c06b8]
call edx
add esp, 8
xor eax, eax
mov byte [ebp - 0x4f], al
lea ecx, [ebp - 0x4f]
call fcn.00459550
mov ecx, eax
call fcn.0042daf0
mov dword [ebp - 0x224], eax
xor ecx, ecx
mov byte [ebp - 0x50], cl
lea ecx, [ebp - 0x50]
call fcn.0045fea0
mov ecx, eax
call fcn.0042dad0
mov dword [ebp - 0x3f8], eax
xor edx, edx
mov byte [ebp - 0x51], dl
lea ecx, [ebp - 0x51]
call fcn.00455ef0
mov ecx, eax
call fcn.0042dad0
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0
je 0x46a9e1
xor ecx, ecx
mov byte [ebp - 0x52], cl
lea ecx, [ebp - 0x52]
call fcn.00459310
mov ecx, eax
call fcn.0042dad0
mov dword [ebp - 0x3fc], eax
jmp 0x46a771
xor edx, edx
mov byte [ebp - 0x53], dl
lea ecx, [ebp - 0x53]
call fcn.0045c750
mov ecx, eax
call fcn.0042dab0
mov dword [ebp - 0x228], eax
xor eax, eax
mov byte [ebp - 0x54], al
lea ecx, [ebp - 0x54]
call fcn.00453d90
mov ecx, eax
call fcn.0042dab0
mov dword [ebp - 0x400], eax
xor ecx, ecx
mov byte [ebp - 0x55], cl
lea ecx, [ebp - 0x55]
call fcn.00456c70
mov ecx, eax
call fcn.0042da90
mov dword [ebp - 0x404], eax
mov edx, dword [ebp - 0x400]
mov dword [ebp - 0x228], edx
cmp dword [ebp - 0x228], 0
je 0x46aa63
xor eax, eax
mov byte [ebp - 0x56], al
lea ecx, [ebp - 0x56]
call fcn.0045bf60
mov ecx, eax
call fcn.0042da90
mov dword [ebp - 0x404], eax
xor ecx, ecx
mov byte [ebp - 0x57], cl
lea ecx, [ebp - 0x57]
call fcn.0045ff30
mov ecx, eax
call fcn.0042da90
mov dword [ebp - 0x22c], eax
xor edx, edx
mov byte [ebp - 0x58], dl
lea ecx, [ebp - 0x58]
call fcn.0045f7e0
mov ecx, eax
call fcn.0042da70
mov dword [ebp - 0x408], eax
xor eax, eax
mov byte [ebp - 0x59], al
lea ecx, [ebp - 0x59]
call fcn.004607a0
mov ecx, eax
call fcn.0042da70
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0
je 0x46aae0
xor edx, edx
mov byte [ebp - 0x5a], dl
lea ecx, [ebp - 0x5a]
call fcn.004622a0
mov ecx, eax
call fcn.0042da50
mov dword [ebp - 0x40c], eax
xor eax, eax
mov byte [ebp - 0x5b], al
lea ecx, [ebp - 0xe14]
push ecx
lea edx, [ebp - 0x948]
push edx
lea ecx, [ebp - 0x5b]
call fcn.00455b00
mov ecx, eax
call fcn.00452880
mov eax, dword [eax*4 + 0x5c06e0]
call eax
add esp, 8
xor ecx, ecx
mov byte [ebp - 0x5c], cl
lea ecx, [ebp - 0x5c]
call fcn.0045e5e0
mov ecx, eax
call fcn.0042da30
mov dword [ebp - 0x230], eax
xor edx, edx
mov byte [ebp - 0x5d], dl
lea ecx, [ebp - 0x5d]
call fcn.00456e20
mov ecx, eax
call fcn.0042da30
mov dword [ebp - 0x410], eax
xor eax, eax
mov byte [ebp - 0x5e], al
lea ecx, [ebp - 0x5e]
call fcn.0045b3b0
mov ecx, eax
call fcn.0042da30
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 0
je 0x46ab8b
xor edx, edx
mov byte [ebp - 0x5f], dl
lea ecx, [ebp - 0x5f]
call fcn.0045fab0
mov ecx, eax
call fcn.0042da10
mov dword [ebp - 0x414], eax
xor eax, eax
mov byte [ebp - 0x60], al
lea ecx, [ebp - 0x6b4]
push ecx
lea edx, [ebp - 0x948]
push edx
lea ecx, [ebp - 0x60]
call fcn.0045b200
mov ecx, eax
call fcn.00452860
mov eax, dword [eax*4 + 0x5c0708]
call eax
add esp, 8
xor ecx, ecx
mov byte [ebp - 0x61], cl
lea ecx, [ebp - 0x61]
call fcn.00459dc0
mov ecx, eax
call fcn.0042d9f0
mov dword [ebp - 0x234], eax
xor edx, edx
mov byte [ebp - 0x62], dl
lea ecx, [ebp - 0x62]
call fcn.00460950
mov ecx, eax
call fcn.0042d9f0
mov dword [ebp - 0x418], eax
xor eax, eax
mov byte [ebp - 0x63], al
lea ecx, [ebp - 0x63]
call fcn.00457de0
mov ecx, eax
call fcn.0042d9d0
mov dword [ebp - 0x41c], eax
mov ecx, dword [ebp - 0x418]
mov dword [ebp - 0x234], ecx
cmp dword [ebp - 0x234], 0
je 0x46ac36
xor edx, edx
mov byte [ebp - 0x64], dl
lea ecx, [ebp - 0x64]
call fcn.0045fb40
mov ecx, eax
call fcn.0042d9d0
mov dword [ebp - 0x41c], eax
mov eax, 2
imul ecx, eax, 0x103
xor edx, edx
mov word [ebp + ecx - 0x948], dx
xor eax, eax
mov byte [ebp - 0x65], al
lea ecx, [ebp - 0x65]
call fcn.00453eb0
mov ecx, eax
call fcn.0042d9d0
mov dword [ebp - 0x238], eax
xor ecx, ecx
mov byte [ebp - 0x66], cl
lea ecx, [ebp - 0x66]
call fcn.0045b950
mov ecx, eax
call fcn.0042d9b0
mov dword [ebp - 0x420], eax
xor edx, edx
mov byte [ebp - 0x67], dl
lea ecx, [ebp - 0x67]
call fcn.00458bb0
mov ecx, eax
call fcn.0042d9b0
mov dword [ebp - 0x424], eax
mov eax, dword [ebp - 0x420]
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0
je 0x46acc8
xor ecx, ecx
mov byte [ebp - 0x68], cl
lea ecx, [ebp - 0x68]
call fcn.00461760
mov ecx, eax
call fcn.0042d990
mov dword [ebp - 0x424], eax
mov dword [ebp - 0x1b8], 0
xor edx, edx
mov byte [ebp - 0x69], dl
lea ecx, [ebp - 0x69]
call fcn.00453be0
mov ecx, eax
call fcn.0042d990
mov dword [ebp - 0x23c], eax
xor eax, eax
mov byte [ebp - 0x6a], al
lea ecx, [ebp - 0x6a]
call fcn.00461130
mov ecx, eax
call fcn.0042d990
mov dword [ebp - 0x428], eax
xor ecx, ecx
mov byte [ebp - 0x6b], cl
lea ecx, [ebp - 0x6b]
call fcn.00456be0
mov ecx, eax
call fcn.0042d970
mov dword [ebp - 0x42c], eax
mov edx, dword [ebp - 0x428]
mov dword [ebp - 0x23c], edx
cmp dword [ebp - 0x23c], 0
je 0x46ad4f
xor eax, eax
mov byte [ebp - 0x6c], al
lea ecx, [ebp - 0x6c]
call fcn.00452e60
mov ecx, eax
call fcn.0042d970
mov dword [ebp - 0x42c], eax
push 0x515c48
lea ecx, [ebp - 0x948]
push ecx
lea edx, [ebp - 0x1b8]
push edx
call fcn.00476f3c
add esp, 0xc
mov dword [ebp - 0x438], eax
xor eax, eax
mov byte [ebp - 0x6d], al
lea ecx, [ebp - 0x6d]
call fcn.00453fd0
mov ecx, eax
call fcn.0042d950
mov dword [ebp - 0x240], eax
xor ecx, ecx
mov byte [ebp - 0x6e], cl
lea ecx, [ebp - 0x6e]
call fcn.00454900
mov ecx, eax
call fcn.0042d950
mov dword [ebp - 0x430], eax
xor edx, edx
mov byte [ebp - 0x6f], dl
lea ecx, [ebp - 0x6f]
call fcn.004604d0
mov ecx, eax
call fcn.0042d950
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x240], eax
cmp dword [ebp - 0x240], 0
je 0x46aded
xor ecx, ecx
mov byte [ebp - 0x70], cl
lea ecx, [ebp - 0x70]
call fcn.004619a0
mov ecx, eax
call fcn.0042d930
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x438], 0
jne 0x46adff
cmp dword [ebp - 0x1b8], 0
jne 0x46ae0b
mov edx, dword [ebp + 8]
push edx
call fcn.0046a0e0
add esp, 4
xor eax, eax
mov byte [ebp - 0x71], al
lea ecx, [ebp - 0x71]
call fcn.0045dda0
mov ecx, eax
call fcn.0042d930
mov dword [ebp - 0x244], eax
xor ecx, ecx
mov byte [ebp - 0x72], cl
lea ecx, [ebp - 0x72]
call fcn.0045e820
mov ecx, eax
call fcn.0042d930
mov dword [ebp - 0x43c], eax
xor edx, edx
mov byte [ebp - 0x73], dl
lea ecx, [ebp - 0x73]
call fcn.00452f80
mov ecx, eax
call fcn.0042d910
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x244], 0
je 0x46ae88
xor ecx, ecx
mov byte [ebp - 0x74], cl
lea ecx, [ebp - 0x74]
call fcn.0045cc60
mov ecx, eax
call fcn.0042d910
mov dword [ebp - 0x440], eax
xor edx, edx
mov byte [ebp - 0x75], dl
lea ecx, [ebp - 0x75]
call fcn.00454210
mov ecx, eax
call fcn.0042d8f0
mov dword [ebp - 0x248], eax
xor eax, eax
mov byte [ebp - 0x76], al
lea ecx, [ebp - 0x76]
call fcn.00455710
mov ecx, eax
call fcn.0042d8f0
mov dword [ebp - 0x444], eax
xor ecx, ecx
mov byte [ebp - 0x77], cl
lea ecx, [ebp - 0x77]
call fcn.004540f0
mov ecx, eax
call fcn.0042d8f0
mov dword [ebp - 0x448], eax
mov edx, dword [ebp - 0x444]
mov dword [ebp - 0x248], edx
cmp dword [ebp - 0x248], 0
je 0x46af05
xor eax, eax
mov byte [ebp - 0x78], al
lea ecx, [ebp - 0x78]
call fcn.0045cab0
mov ecx, eax
call fcn.0042d8d0
mov dword [ebp - 0x448], eax
push 0x9960
push 0x5a60d8
push 0x5c17d8
call fcn.00469c70
add esp, 0xc
mov ecx, dword [ebp - 0x1b8]
push ecx
push 0x9960
push 1
push 0x5a60d8
call fcn.004772a0
add esp, 0x10
xor edx, edx
mov byte [ebp - 0x79], dl
lea ecx, [ebp - 0x79]
call fcn.0045c3f0
mov ecx, eax
call fcn.0042d8d0
mov dword [ebp - 0x24c], eax
xor eax, eax
mov byte [ebp - 0x7a], al
lea ecx, [ebp - 0x7a]
call fcn.004532e0
mov ecx, eax
call fcn.0042d8b0
mov dword [ebp - 0x44c], eax
xor ecx, ecx
mov byte [ebp - 0x7b], cl
lea ecx, [ebp - 0x7b]
call fcn.004546c0
mov ecx, eax
call fcn.0042d8b0
mov dword [ebp - 0x450], eax
mov edx, dword [ebp - 0x44c]
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 0
je 0x46afb4
xor eax, eax
mov byte [ebp - 0x7c], al
lea ecx, [ebp - 0x7c]
call fcn.0045eca0
mov ecx, eax
call fcn.0042d8b0
mov dword [ebp - 0x450], eax
mov ecx, dword [ebp - 0x1b8]
push ecx
call fcn.00476ffd
add esp, 4
xor edx, edx
mov byte [ebp - 0x7d], dl
lea ecx, [ebp - 0x7d]
call fcn.0045bed0
mov ecx, eax
call fcn.0042d890
mov dword [ebp - 0x250], eax
xor eax, eax
mov byte [ebp - 0x7e], al
lea ecx, [ebp - 0x7e]
call fcn.00457b10
mov ecx, eax
call fcn.0042d890
mov dword [ebp - 0x454], eax
xor ecx, ecx
mov byte [ebp - 0x7f], cl
lea ecx, [ebp - 0x7f]
call fcn.00460170
mov ecx, eax
call fcn.0042d890
mov dword [ebp - 0x458], eax
mov edx, dword [ebp - 0x454]
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 0
je 0x46b040
xor eax, eax
mov byte [ebp - 0x80], al
lea ecx, [ebp - 0x80]
call fcn.00458d60
mov ecx, eax
call fcn.0042d870
mov dword [ebp - 0x458], eax
mov ecx, dword [ebp - 0x254]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.004691f0
add esp, 8
mov byte [ebp - 1], al
xor eax, eax
mov byte [ebp - 0x81], al
lea ecx, [ebp - 0x81]
call fcn.004535b0
mov ecx, eax
call fcn.0042d870
mov dword [ebp - 0x258], eax
xor ecx, ecx
mov byte [ebp - 0x82], cl
lea ecx, [ebp - 0x82]
call fcn.0045e790
mov ecx, eax
call fcn.0042d850
mov dword [ebp - 0x45c], eax
xor edx, edx
mov byte [ebp - 0x83], dl
lea ecx, [ebp - 0x83]
call fcn.0045e3a0
mov ecx, eax
call fcn.0042d850
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x45c]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x258], 0
je 0x46b0eb
xor ecx, ecx
mov byte [ebp - 0x84], cl
lea ecx, [ebp - 0x84]
call fcn.00456b50
mov ecx, eax
call fcn.0042d850
mov dword [ebp - 0x460], eax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1a8], edx
xor eax, eax
mov byte [ebp - 0x85], al
lea ecx, [ebp - 0x85]
call fcn.00457210
mov ecx, eax
call fcn.0042d830
mov dword [ebp - 0x25c], eax
xor ecx, ecx
mov byte [ebp - 0x86], cl
lea ecx, [ebp - 0x86]
call fcn.00454060
mov ecx, eax
call fcn.0042d830
mov dword [ebp - 0x464], eax
xor edx, edx
mov byte [ebp - 0x87], dl
lea ecx, [ebp - 0x87]
call fcn.004610a0
mov ecx, eax
call fcn.0042d830
mov dword [ebp - 0x468], eax
mov eax, dword [ebp - 0x464]
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 0
je 0x46b189
xor ecx, ecx
mov byte [ebp - 0x88], cl
lea ecx, [ebp - 0x88]
call fcn.0045f3f0
mov ecx, eax
call fcn.0042d810
mov dword [ebp - 0x468], eax
xor edx, edx
mov byte [ebp - 0x89], dl
lea ecx, [ebp - 0x89]
call fcn.00454330
mov ecx, eax
call fcn.0042d810
mov dword [ebp - 0x260], eax
xor eax, eax
mov byte [ebp - 0x8a], al
lea ecx, [ebp - 0x8a]
call fcn.0045a2d0
mov ecx, eax
call fcn.0042d7f0
mov dword [ebp - 0x46c], eax
xor ecx, ecx
mov byte [ebp - 0x8b], cl
lea ecx, [ebp - 0x8b]
call fcn.004594c0
mov ecx, eax
call fcn.0042d7f0
mov dword [ebp - 0x470], eax
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 0
je 0x46b21e
xor eax, eax
mov byte [ebp - 0x8c], al
lea ecx, [ebp - 0x8c]
call fcn.0045cfc0
mov ecx, eax
call fcn.0042d7f0
mov dword [ebp - 0x470], eax
xor ecx, ecx
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x8d]
call fcn.0045ab40
mov ecx, eax
call fcn.0042d7d0
mov dword [ebp - 0x264], eax
xor edx, edx
mov byte [ebp - 0x8e], dl
lea ecx, [ebp - 0x8e]
call fcn.00458cd0
mov ecx, eax
call fcn.0042d7d0
mov dword [ebp - 0x474], eax
xor eax, eax
mov byte [ebp - 0x8f], al
lea ecx, [ebp - 0x8f]
call fcn.0045e310
mov ecx, eax
call fcn.0042d7b0
mov dword [ebp - 0x478], eax
mov ecx, dword [ebp - 0x474]
mov dword [ebp - 0x264], ecx
cmp dword [ebp - 0x264], 0
je 0x46b2b3
xor edx, edx
mov byte [ebp - 0x90], dl
lea ecx, [ebp - 0x90]
call fcn.00455dd0
mov ecx, eax
call fcn.0042d7b0
mov dword [ebp - 0x478], eax
push 0x44
push 0
lea eax, [ebp - 0x740]
push eax
call fcn.00472240
add esp, 0xc
xor ecx, ecx
mov byte [ebp - 0x91], cl
lea ecx, [ebp - 0x91]
call fcn.00460710
mov ecx, eax
call fcn.0042d7b0
mov dword [ebp - 0x268], eax
xor edx, edx
mov byte [ebp - 0x92], dl
lea ecx, [ebp - 0x92]
call fcn.00454d80
mov ecx, eax
call fcn.0042d790
mov dword [ebp - 0x47c], eax
xor eax, eax
mov byte [ebp - 0x93], al
lea ecx, [ebp - 0x93]
call fcn.0045d9e0
mov ecx, eax
call fcn.0042d790
mov dword [ebp - 0x480], eax
mov ecx, dword [ebp - 0x47c]
mov dword [ebp - 0x268], ecx
cmp dword [ebp - 0x268], 0
je 0x46b35b
xor edx, edx
mov byte [ebp - 0x94], dl
lea ecx, [ebp - 0x94]
call fcn.0045b440
mov ecx, eax
call fcn.0042d790
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x740], 0x44
xor eax, eax
mov byte [ebp - 0x95], al
lea ecx, [ebp - 0x95]
call fcn.0045c480
mov ecx, eax
call fcn.0042d770
mov dword [ebp - 0x26c], eax
xor ecx, ecx
mov byte [ebp - 0x96], cl
lea ecx, [ebp - 0x96]
call fcn.00453520
mov ecx, eax
call fcn.0042d770
mov dword [ebp - 0x484], eax
xor edx, edx
mov byte [ebp - 0x97], dl
lea ecx, [ebp - 0x97]
call fcn.0045d710
mov ecx, eax
call fcn.0042d750
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x484]
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 0
je 0x46b3fa
xor ecx, ecx
mov byte [ebp - 0x98], cl
lea ecx, [ebp - 0x98]
call fcn.004547e0
mov ecx, eax
call fcn.0042d750
mov dword [ebp - 0x488], eax
xor edx, edx
mov byte [ebp - 0x99], dl
push 0x10
push 0
lea eax, [ebp - 0x1e8]
push eax
lea ecx, [ebp - 0x99]
call fcn.004566d0
mov ecx, eax
call fcn.00452840
mov ecx, dword [eax*4 + 0x5c0730]
call ecx
add esp, 0xc
xor edx, edx
mov byte [ebp - 0x9a], dl
lea ecx, [ebp - 0x9a]
call fcn.0045bd70
mov ecx, eax
call fcn.0042d730
mov dword [ebp - 0x270], eax
xor eax, eax
mov byte [ebp - 0x9b], al
lea ecx, [ebp - 0x9b]
call fcn.00458770
mov ecx, eax
call fcn.0042d730
mov dword [ebp - 0x48c], eax
xor ecx, ecx
mov byte [ebp - 0x9c], cl
lea ecx, [ebp - 0x9c]
call fcn.0045f090
mov ecx, eax
call fcn.0042d710
mov dword [ebp - 0x490], eax
mov edx, dword [ebp - 0x48c]
mov dword [ebp - 0x270], edx
cmp dword [ebp - 0x270], 0
je 0x46b4c0
xor eax, eax
mov byte [ebp - 0x9d], al
lea ecx, [ebp - 0x9d]
call fcn.00455050
mov ecx, eax
call fcn.0042d710
mov dword [ebp - 0x490], eax
xor ecx, ecx
mov byte [ebp - 0x9e], cl
lea ecx, [ebp - 0x9e]
call fcn.00462210
mov ecx, eax
call fcn.0042d6f0
mov dword [ebp - 0x274], eax
xor edx, edx
mov byte [ebp - 0x9f], dl
lea ecx, [ebp - 0x9f]
call fcn.00461f40
mov ecx, eax
call fcn.0042d6f0
mov dword [ebp - 0x494], eax
xor eax, eax
mov byte [ebp - 0xa0], al
lea ecx, [ebp - 0xa0]
call fcn.0045b0e0
mov ecx, eax
call fcn.0042d6f0
mov dword [ebp - 0x498], eax
mov ecx, dword [ebp - 0x494]
mov dword [ebp - 0x274], ecx
cmp dword [ebp - 0x274], 0
je 0x46b555
xor edx, edx
mov byte [ebp - 0xa1], dl
lea ecx, [ebp - 0xa1]
call fcn.00462060
mov ecx, eax
call fcn.0042d6d0
mov dword [ebp - 0x498], eax
lea eax, [ebp - 0x1e8]
push eax
lea ecx, [ebp - 0x740]
push ecx
push 0
push 0
push 4
push 1
push 0
push 0
push 0
lea edx, [ebp - 0x948]
push edx
call fcn.004698d0
test eax, eax
je 0x46b587
mov byte [ebp - 0xa], 1
jmp 0x46b58b
mov byte [ebp - 0xa], 0
mov al, byte [ebp - 0xa]
mov byte [ebp - 0xa2], al
movzx ecx, byte [ebp - 0xa2]
test ecx, ecx
jne 0x46b5a6
xor al, al
jmp 0x46df69
xor edx, edx
mov byte [ebp - 0xa3], dl
lea ecx, [ebp - 0xa3]
call fcn.0045a360
mov ecx, eax
call fcn.0042d6d0
mov dword [ebp - 0x278], eax
xor eax, eax
mov byte [ebp - 0xa4], al
lea ecx, [ebp - 0xa4]
call fcn.00454b40
mov ecx, eax
call fcn.0042d6b0
mov dword [ebp - 0x49c], eax
xor ecx, ecx
mov byte [ebp - 0xa5], cl
lea ecx, [ebp - 0xa5]
call fcn.0045d560
mov ecx, eax
call fcn.0042d6b0
mov dword [ebp - 0x4a0], eax
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x278], edx
cmp dword [ebp - 0x278], 0
je 0x46b63b
xor eax, eax
mov byte [ebp - 0xa6], al
lea ecx, [ebp - 0xa6]
call fcn.004586e0
mov ecx, eax
call fcn.0042d6b0
mov dword [ebp - 0x4a0], eax
xor ecx, ecx
mov byte [ebp - 0xa7], cl
lea ecx, [ebp - 0xa7]
call fcn.00458260
mov ecx, eax
call fcn.0042d690
mov dword [ebp - 0x27c], eax
xor edx, edx
mov byte [ebp - 0xa8], dl
lea ecx, [ebp - 0xa8]
call fcn.0045b830
mov ecx, eax
call fcn.0042d690
mov dword [ebp - 0x4a4], eax
xor eax, eax
mov byte [ebp - 0xa9], al
lea ecx, [ebp - 0xa9]
call fcn.00461be0
mov ecx, eax
call fcn.0042d690
mov dword [ebp - 0x4a8], eax
mov ecx, dword [ebp - 0x4a4]
mov dword [ebp - 0x27c], ecx
cmp dword [ebp - 0x27c], 0
je 0x46b6d0
xor edx, edx
mov byte [ebp - 0xaa], dl
lea ecx, [ebp - 0xaa]
call fcn.0045ac60
mov ecx, eax
call fcn.0042d670
mov dword [ebp - 0x4a8], eax
movzx eax, byte [ebp - 1]
test eax, eax
je 0x46b6ee
lea ecx, [ebp - 0x6b8]
push ecx
mov edx, dword [ebp - 0x1e8]
push edx
call fcn.004699b0
add esp, 8
xor eax, eax
mov byte [ebp - 0xab], al
lea ecx, [ebp - 0x6fc]
push ecx
lea ecx, [ebp - 0xab]
call fcn.00454600
nop
xor edx, edx
mov byte [ebp - 0xac], dl
lea ecx, [ebp - 0xac]
call fcn.00460d40
mov ecx, eax
call fcn.0042d670
mov dword [ebp - 0x280], eax
xor eax, eax
mov byte [ebp - 0xad], al
lea ecx, [ebp - 0xad]
call fcn.00455830
mov ecx, eax
call fcn.0042d650
mov dword [ebp - 0x4ac], eax
xor ecx, ecx
mov byte [ebp - 0xae], cl
lea ecx, [ebp - 0xae]
call fcn.0045b8c0
mov ecx, eax
call fcn.0042d650
mov dword [ebp - 0x4b0], eax
mov edx, dword [ebp - 0x4ac]
mov dword [ebp - 0x280], edx
cmp dword [ebp - 0x280], 0
je 0x46b79e
xor eax, eax
mov byte [ebp - 0xaf], al
lea ecx, [ebp - 0xaf]
call fcn.00455cb0
mov ecx, eax
call fcn.0042d650
mov dword [ebp - 0x4b0], eax
xor ecx, ecx
mov byte [ebp - 0xb0], cl
lea ecx, [ebp - 0x6fc]
call fcn.00468b00
push eax
lea ecx, [ebp - 0xb0]
call fcn.0045ea60
mov ecx, eax
call fcn.00452820
mov edx, dword [eax*4 + 0x5c0758]
call edx
mov dword [ebp - 0x1cc], eax
cmp dword [ebp - 0x1cc], 0
jne 0x46b7e3
xor al, al
jmp 0x46df69
xor eax, eax
mov byte [ebp - 0xb1], al
lea ecx, [ebp - 0xb1]
call fcn.004557a0
mov ecx, eax
call fcn.0042d610
mov dword [ebp - 0x284], eax
xor ecx, ecx
mov byte [ebp - 0xb2], cl
lea ecx, [ebp - 0xb2]
call fcn.00461d90
mov ecx, eax
call fcn.0042d610
mov dword [ebp - 0x4b4], eax
xor edx, edx
mov byte [ebp - 0xb3], dl
lea ecx, [ebp - 0xb3]
call fcn.0045dc80
mov ecx, eax
call fcn.0042d610
mov dword [ebp - 0x4b8], eax
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x284], eax
cmp dword [ebp - 0x284], 0
je 0x46b878
xor ecx, ecx
mov byte [ebp - 0xb4], cl
lea ecx, [ebp - 0xb4]
call fcn.00455170
mov ecx, eax
call fcn.0042d5f0
mov dword [ebp - 0x4b8], eax
lea ecx, [ebp - 0x6fc]
call fcn.00468e70
nop
xor edx, edx
mov byte [ebp - 0xb5], dl
lea ecx, [ebp - 0xb5]
call fcn.00459d30
mov ecx, eax
call fcn.0042d5f0
mov dword [ebp - 0x288], eax
xor eax, eax
mov byte [ebp - 0xb6], al
lea ecx, [ebp - 0xb6]
call fcn.00459a60
mov ecx, eax
call fcn.0042d5f0
mov dword [ebp - 0x4bc], eax
xor ecx, ecx
mov byte [ebp - 0xb7], cl
lea ecx, [ebp - 0xb7]
call fcn.00456400
mov ecx, eax
call fcn.0042d5d0
mov dword [ebp - 0x4c0], eax
mov edx, dword [ebp - 0x4bc]
mov dword [ebp - 0x288], edx
cmp dword [ebp - 0x288], 0
je 0x46b919
xor eax, eax
mov byte [ebp - 0xb8], al
lea ecx, [ebp - 0xb8]
call fcn.0045f240
mov ecx, eax
call fcn.0042d5d0
mov dword [ebp - 0x4c0], eax
lea ecx, [ebp - 0x6fc]
call fcn.00467a30
nop
xor ecx, ecx
mov byte [ebp - 0xb9], cl
lea edx, [ebp - 0x6e0]
push edx
lea ecx, [ebp - 0xb9]
call fcn.0045de30
nop
xor eax, eax
mov byte [ebp - 0xba], al
lea ecx, [ebp - 0x6e0]
call fcn.00468aa0
push eax
mov ecx, dword [ebp - 0x1cc]
push ecx
lea ecx, [ebp - 0xba]
call fcn.0045fc60
mov ecx, eax
call fcn.00452800
mov edx, dword [eax*4 + 0x5c0780]
call edx
mov dword [ebp - 0x1ac], eax
xor eax, eax
mov byte [ebp - 0xbb], al
lea ecx, [ebp - 0xbb]
call fcn.00456490
mov ecx, eax
call fcn.0042d5b0
mov dword [ebp - 0x28c], eax
xor ecx, ecx
mov byte [ebp - 0xbc], cl
lea ecx, [ebp - 0xbc]
call fcn.00460320
mov ecx, eax
call fcn.0042d590
mov dword [ebp - 0x4c4], eax
xor edx, edx
mov byte [ebp - 0xbd], dl
lea ecx, [ebp - 0xbd]
call fcn.00461520
mov ecx, eax
call fcn.0042d590
mov dword [ebp - 0x4c8], eax
mov eax, dword [ebp - 0x4c4]
mov dword [ebp - 0x28c], eax
cmp dword [ebp - 0x28c], 0
je 0x46ba11
xor ecx, ecx
mov byte [ebp - 0xbe], cl
lea ecx, [ebp - 0xbe]
call fcn.0045b680
mov ecx, eax
call fcn.0042d590
mov dword [ebp - 0x4c8], eax
lea ecx, [ebp - 0x6e0]
call fcn.00468e10
nop
xor edx, edx
mov byte [ebp - 0xbf], dl
lea ecx, [ebp - 0xbf]
call fcn.0045d5f0
mov ecx, eax
call fcn.0042d570
mov dword [ebp - 0x290], eax
xor eax, eax
mov byte [ebp - 0xc0], al
lea ecx, [ebp - 0xc0]
call fcn.00460290
mov ecx, eax
call fcn.0042d570
mov dword [ebp - 0x4cc], eax
xor ecx, ecx
mov byte [ebp - 0xc1], cl
lea ecx, [ebp - 0xc1]
call fcn.00457a80
mov ecx, eax
call fcn.0042d550
mov dword [ebp - 0x4d0], eax
mov edx, dword [ebp - 0x4cc]
mov dword [ebp - 0x290], edx
cmp dword [ebp - 0x290], 0
je 0x46bab2
xor eax, eax
mov byte [ebp - 0xc2], al
lea ecx, [ebp - 0xc2]
call fcn.0045e940
mov ecx, eax
call fcn.0042d550
mov dword [ebp - 0x4d0], eax
lea ecx, [ebp - 0x6e0]
call fcn.004679d0
nop
xor ecx, ecx
mov byte [ebp - 0xc3], cl
lea ecx, [ebp - 0xc3]
call fcn.0045e4c0
mov ecx, eax
call fcn.0042d550
mov dword [ebp - 0x294], eax
xor edx, edx
mov byte [ebp - 0xc4], dl
lea ecx, [ebp - 0xc4]
call fcn.00459040
mov ecx, eax
call fcn.0042d530
mov dword [ebp - 0x4d4], eax
xor eax, eax
mov byte [ebp - 0xc5], al
lea ecx, [ebp - 0xc5]
call fcn.00456910
mov ecx, eax
call fcn.0042d530
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d4]
mov dword [ebp - 0x294], ecx
cmp dword [ebp - 0x294], 0
je 0x46bb53
xor edx, edx
mov byte [ebp - 0xc6], dl
lea ecx, [ebp - 0xc6]
call fcn.00453b50
mov ecx, eax
call fcn.0042d510
mov dword [ebp - 0x4d8], eax
push 0x40
push 0x3000
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x50]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x34]
push eax
mov ecx, dword [ebp - 0x1e8]
push ecx
call fcn.00469a70
mov dword [ebp - 0x18], eax
xor edx, edx
mov byte [ebp - 0xc7], dl
lea ecx, [ebp - 0xc7]
call fcn.00459e50
mov ecx, eax
call fcn.0042d510
mov dword [ebp - 0x298], eax
xor eax, eax
mov byte [ebp - 0xc8], al
lea ecx, [ebp - 0xc8]
call fcn.00452dd0
mov ecx, eax
call fcn.0042d510
mov dword [ebp - 0x4dc], eax
xor ecx, ecx
mov byte [ebp - 0xc9], cl
lea ecx, [ebp - 0xc9]
call fcn.00459790
mov ecx, eax
call fcn.0042d4f0
mov dword [ebp - 0x4e0], eax
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x298], edx
cmp dword [ebp - 0x298], 0
je 0x46bc0c
xor eax, eax
mov byte [ebp - 0xca], al
lea ecx, [ebp - 0xca]
call fcn.00455f80
mov ecx, eax
call fcn.0042d4f0
mov dword [ebp - 0x4e0], eax
cmp dword [ebp - 0x18], 0
jne 0x46bdfd
xor ecx, ecx
mov byte [ebp - 0xcb], cl
lea ecx, [ebp - 0xcb]
call fcn.00458df0
mov ecx, eax
call fcn.0042d4f0
mov dword [ebp - 0x29c], eax
xor edx, edx
mov byte [ebp - 0xcc], dl
lea ecx, [ebp - 0xcc]
call fcn.0045d050
mov ecx, eax
call fcn.0042d4d0
mov dword [ebp - 0x4e4], eax
xor eax, eax
mov byte [ebp - 0xcd], al
lea ecx, [ebp - 0xcd]
call fcn.00454570
mov ecx, eax
call fcn.0042d4d0
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x29c], ecx
cmp dword [ebp - 0x29c], 0
je 0x46bcab
xor edx, edx
mov byte [ebp - 0xce], dl
lea ecx, [ebp - 0xce]
call fcn.00458fb0
mov ecx, eax
call fcn.0042d4b0
mov dword [ebp - 0x4e8], eax
push 0
mov eax, dword [ebp - 0x1e8]
push eax
call fcn.00469a40
nop
xor ecx, ecx
mov byte [ebp - 0xcf], cl
lea ecx, [ebp - 0xcf]
call fcn.00457f90
mov ecx, eax
call fcn.0042d4b0
mov dword [ebp - 0x2a0], eax
xor edx, edx
mov byte [ebp - 0xd0], dl
lea ecx, [ebp - 0xd0]
call fcn.00460f80
mov ecx, eax
call fcn.0042d4b0
mov dword [ebp - 0x4ec], eax
xor eax, eax
mov byte [ebp - 0xd1], al
lea ecx, [ebp - 0xd1]
call fcn.00460b00
mov ecx, eax
call fcn.0042d490
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a0], ecx
cmp dword [ebp - 0x2a0], 0
je 0x46bd4f
xor edx, edx
mov byte [ebp - 0xd2], dl
lea ecx, [ebp - 0xd2]
call fcn.00459c10
mov ecx, eax
call fcn.0042d490
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x1cc]
push eax
call fcn.00469920
nop
xor ecx, ecx
mov byte [ebp - 0xd3], cl
lea ecx, [ebp - 0xd3]
call fcn.004577b0
mov ecx, eax
call fcn.0042d490
mov dword [ebp - 0x2a4], eax
xor edx, edx
mov byte [ebp - 0xd4], dl
lea ecx, [ebp - 0xd4]
call fcn.00455560
mov ecx, eax
call fcn.0042d470
mov dword [ebp - 0x4f4], eax
xor eax, eax
mov byte [ebp - 0xd5], al
lea ecx, [ebp - 0xd5]
call fcn.00453760
mov ecx, eax
call fcn.0042d470
mov dword [ebp - 0x4f8], eax
mov ecx, dword [ebp - 0x4f4]
mov dword [ebp - 0x2a4], ecx
cmp dword [ebp - 0x2a4], 0
je 0x46bdf1
xor edx, edx
mov byte [ebp - 0xd6], dl
lea ecx, [ebp - 0xd6]
call fcn.004565b0
mov ecx, eax
call fcn.0042d450
mov dword [ebp - 0x4f8], eax
mov eax, dword [ebp + 8]
push eax
call fcn.0046a0e0
add esp, 4
xor ecx, ecx
mov byte [ebp - 0xd7], cl
lea ecx, [ebp - 0xd7]
call fcn.00454e10
mov ecx, eax
call fcn.0042d450
mov dword [ebp - 0x2a8], eax
xor edx, edx
mov byte [ebp - 0xd8], dl
lea ecx, [ebp - 0xd8]
call fcn.0045eee0
mov ecx, eax
call fcn.0042d450
mov dword [ebp - 0x4fc], eax
xor eax, eax
mov byte [ebp - 0xd9], al
lea ecx, [ebp - 0xd9]
call fcn.004598b0
mov ecx, eax
call fcn.0042d430
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x4fc]
mov dword [ebp - 0x2a8], ecx
cmp dword [ebp - 0x2a8], 0
je 0x46be92
xor edx, edx
mov byte [ebp - 0xda], dl
lea ecx, [ebp - 0xda]
call fcn.00461a30
mov ecx, eax
call fcn.0042d430
mov dword [ebp - 0x500], eax
mov eax, dword [ebp - 0x18]
cdq
mov ecx, dword [ebp - 8]
sub eax, dword [ecx + 0x34]
mov dword [ebp - 0x638], eax
xor edx, edx
mov byte [ebp - 0xdb], dl
lea ecx, [ebp - 0xdb]
call fcn.0045b9e0
mov ecx, eax
call fcn.0042d410
mov dword [ebp - 0x2ac], eax
xor eax, eax
mov byte [ebp - 0xdc], al
lea ecx, [ebp - 0xdc]
call fcn.0045f510
mov ecx, eax
call fcn.0042d410
mov dword [ebp - 0x504], eax
xor ecx, ecx
mov byte [ebp - 0xdd], cl
lea ecx, [ebp - 0xdd]
call fcn.00461fd0
mov ecx, eax
call fcn.0042d410
mov dword [ebp - 0x508], eax
mov edx, dword [ebp - 0x504]
mov dword [ebp - 0x2ac], edx
cmp dword [ebp - 0x2ac], 0
je 0x46bf37
xor eax, eax
mov byte [ebp - 0xde], al
lea ecx, [ebp - 0xde]
call fcn.004562e0
mov ecx, eax
call fcn.0042d3f0
mov dword [ebp - 0x508], eax
mov byte [ebp - 9], 0
xor ecx, ecx
mov byte [ebp - 0xdf], cl
lea ecx, [ebp - 0xdf]
call fcn.00455c20
mov ecx, eax
call fcn.0042d3f0
mov dword [ebp - 0x2b0], eax
xor edx, edx
mov byte [ebp - 0xe0], dl
lea ecx, [ebp - 0xe0]
call fcn.0045c630
mov ecx, eax
call fcn.0042d3f0
mov dword [ebp - 0x50c], eax
xor eax, eax
mov byte [ebp - 0xe1], al
lea ecx, [ebp - 0xe1]
call fcn.0045c900
mov ecx, eax
call fcn.00452200
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x50c]
mov dword [ebp - 0x2b0], ecx
cmp dword [ebp - 0x2b0], 0
je 0x46bfd0
xor edx, edx
mov byte [ebp - 0xe2], dl
lea ecx, [ebp - 0xe2]
call fcn.004605f0
mov ecx, eax
call fcn.00452200
mov dword [ebp - 0x510], eax
movzx eax, byte [ebp - 1]
test eax, eax
je 0x46c1db
xor ecx, ecx
mov byte [ebp - 0xe3], cl
lea ecx, [ebp - 0xe3]
call fcn.00459ee0
mov ecx, eax
call fcn.0042e250
mov dword [ebp - 0x2b4], eax
xor edx, edx
mov byte [ebp - 0xe4], dl
lea ecx, [ebp - 0xe4]
call fcn.00453010
mov ecx, eax
call fcn.0042e250
mov dword [ebp - 0x514], eax
xor eax, eax
mov byte [ebp - 0xe5], al
lea ecx, [ebp - 0xe5]
call fcn.0045f5a0
mov ecx, eax
call fcn.0042e250
mov dword [ebp - 0x518], eax
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2b4], ecx
cmp dword [ebp - 0x2b4], 0
je 0x46c071
xor edx, edx
mov byte [ebp - 0xe6], dl
lea ecx, [ebp - 0xe6]
call fcn.004599d0
mov ecx, eax
call fcn.0042e230
mov dword [ebp - 0x518], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x34], ecx
xor edx, edx
mov byte [ebp - 0xe7], dl
lea ecx, [ebp - 0xe7]
call fcn.0045b050
mov ecx, eax
call fcn.0042e230
mov dword [ebp - 0x2b8], eax
xor eax, eax
mov byte [ebp - 0xe8], al
lea ecx, [ebp - 0xe8]
call fcn.0045b710
mov ecx, eax
call fcn.0042e210
mov dword [ebp - 0x51c], eax
xor ecx, ecx
mov byte [ebp - 0xe9], cl
lea ecx, [ebp - 0xe9]
call fcn.0045cbd0
mov ecx, eax
call fcn.0042e210
mov dword [ebp - 0x520], eax
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2b8], edx
cmp dword [ebp - 0x2b8], 0
je 0x46c10f
xor eax, eax
mov byte [ebp - 0xea], al
lea ecx, [ebp - 0xea]
call fcn.00453490
mov ecx, eax
call fcn.0042e210
mov dword [ebp - 0x520], eax
push 0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x54]
push edx
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 0x1e8]
push edx
call dword [ebp - 0x1ac]
test eax, eax
je 0x46c13a
mov byte [ebp - 0xb], 1
jmp 0x46c13e
mov byte [ebp - 0xb], 0
mov al, byte [ebp - 0xb]
mov byte [ebp - 9], al
xor ecx, ecx
mov byte [ebp - 0xeb], cl
lea ecx, [ebp - 0xeb]
call fcn.0045eaf0
mov ecx, eax
call fcn.0042e1f0
mov dword [ebp - 0x2bc], eax
xor edx, edx
mov byte [ebp - 0xec], dl
lea ecx, [ebp - 0xec]
call fcn.0045f120
mov ecx, eax
call fcn.0042e1f0
mov dword [ebp - 0x524], eax
xor eax, eax
mov byte [ebp - 0xed], al
lea ecx, [ebp - 0xed]
call fcn.004591f0
mov ecx, eax
call fcn.0042e1f0
mov dword [ebp - 0x528], eax
mov ecx, dword [ebp - 0x524]
mov dword [ebp - 0x2bc], ecx
cmp dword [ebp - 0x2bc], 0
je 0x46c1d9
xor edx, edx
mov byte [ebp - 0xee], dl
lea ecx, [ebp - 0xee]
call fcn.00453e20
mov ecx, eax
call fcn.0042e1d0
mov dword [ebp - 0x528], eax
jmp 0x46c210
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x54]
push ecx
mov edx, dword [ebp - 0x1a8]
push edx
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x1e8]
push ecx
call dword [ebp - 0x1ac]
test eax, eax
je 0x46c206
mov byte [ebp - 0xc], 1
jmp 0x46c20a
mov byte [ebp - 0xc], 0
mov dl, byte [ebp - 0xc]
mov byte [ebp - 9], dl
xor eax, eax
mov byte [ebp - 0xef], al
lea ecx, [ebp - 0xef]
call fcn.0045a510
mov ecx, eax
call fcn.0042e1d0
mov dword [ebp - 0x2c0], eax
xor ecx, ecx
mov byte [ebp - 0xf0], cl
lea ecx, [ebp - 0xf0]
call fcn.0045e9d0
mov ecx, eax
call fcn.0042d3d0
mov dword [ebp - 0x52c], eax
xor edx, edx
mov byte [ebp - 0xf1], dl
lea ecx, [ebp - 0xf1]
call fcn.0045dfb0
mov ecx, eax
call fcn.0042d3d0
mov dword [ebp - 0x530], eax
mov eax, dword [ebp - 0x52c]
mov dword [ebp - 0x2c0], eax
cmp dword [ebp - 0x2c0], 0
je 0x46c2a5
xor ecx, ecx
mov byte [ebp - 0xf2], cl
lea ecx, [ebp - 0xf2]
call fcn.0045f000
mov ecx, eax
call fcn.0042d3d0
mov dword [ebp - 0x530], eax
movzx edx, byte [ebp - 9]
test edx, edx
jne 0x46c2b4
xor al, al
jmp 0x46df69
xor eax, eax
mov byte [ebp - 0xf3], al
lea ecx, [ebp - 0xf3]
call fcn.004570f0
mov ecx, eax
call fcn.0042d3b0
mov dword [ebp - 0x2c4], eax
xor ecx, ecx
mov byte [ebp - 0xf4], cl
lea ecx, [ebp - 0xf4]
call fcn.00461250
mov ecx, eax
call fcn.0042d3b0
mov dword [ebp - 0x534], eax
xor edx, edx
mov byte [ebp - 0xf5], dl
lea ecx, [ebp - 0xf5]
call fcn.00459ca0
mov ecx, eax
call fcn.0042d3b0
mov dword [ebp - 0x538], eax
mov eax, dword [ebp - 0x534]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x46c349
xor ecx, ecx
mov byte [ebp - 0xf6], cl
lea ecx, [ebp - 0xf6]
call fcn.00457330
mov ecx, eax
call fcn.0042d390
mov dword [ebp - 0x538], eax
xor edx, edx
mov byte [ebp - 0xf7], dl
lea ecx, [ebp - 0xf7]
call fcn.004567f0
mov ecx, eax
call fcn.0042d390
mov dword [ebp - 0x2c8], eax
xor eax, eax
mov byte [ebp - 0xf8], al
lea ecx, [ebp - 0xf8]
call fcn.00454ab0
mov ecx, eax
call fcn.0042d370
mov dword [ebp - 0x53c], eax
xor ecx, ecx
mov byte [ebp - 0xf9], cl
lea ecx, [ebp - 0xf9]
call fcn.00455680
mov ecx, eax
call fcn.0042d370
mov dword [ebp - 0x540], eax
mov edx, dword [ebp - 0x53c]
mov dword [ebp - 0x2c8], edx
cmp dword [ebp - 0x2c8], 0
je 0x46c3de
xor eax, eax
mov byte [ebp - 0xfa], al
lea ecx, [ebp - 0xfa]
call fcn.0045d4d0
mov ecx, eax
call fcn.0042d370
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x1c8], 0
xor ecx, ecx
mov byte [ebp - 0xfb], cl
lea ecx, [ebp - 0xfb]
call fcn.0045ccf0
mov ecx, eax
call fcn.0042d350
mov dword [ebp - 0x2cc], eax
xor edx, edx
mov byte [ebp - 0xfc], dl
lea ecx, [ebp - 0xfc]
call fcn.0045b170
mov ecx, eax
call fcn.0042d350
mov dword [ebp - 0x544], eax
xor eax, eax
mov byte [ebp - 0xfd], al
lea ecx, [ebp - 0xfd]
call fcn.00460cb0
mov ecx, eax
call fcn.0042d330
mov dword [ebp - 0x548], eax
mov ecx, dword [ebp - 0x544]
mov dword [ebp - 0x2cc], ecx
cmp dword [ebp - 0x2cc], 0
je 0x46c47d
xor edx, edx
mov byte [ebp - 0xfe], dl
lea ecx, [ebp - 0xfe]
call fcn.004608c0
mov ecx, eax
call fcn.0042d330
mov dword [ebp - 0x548], eax
mov eax, 8
imul ecx, eax, 5
mov edx, dword [ebp - 8]
cmp dword [edx + ecx + 0x78], 0
je 0x46c4b0
mov eax, 8
imul ecx, eax, 5
mov edx, dword [ebp - 8]
mov eax, dword [edx + ecx + 0x78]
mov ecx, dword [edx + ecx + 0x7c]
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x1ec], ecx
jmp 0x46c4dc
mov dword [ebp - 0x68c], 0
mov dword [ebp - 0x688], 0
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x688]
mov dword [ebp - 0x1f0], edx
mov dword [ebp - 0x1ec], eax
xor ecx, ecx
mov byte [ebp - 0xff], cl
lea ecx, [ebp - 0xff]
call fcn.0045e160
mov ecx, eax
call fcn.0042d330
mov dword [ebp - 0x2d0], eax
xor edx, edx
mov byte [ebp - 0x100], dl
lea ecx, [ebp - 0x100]
call fcn.0045c090
mov ecx, eax
call fcn.0042d310
mov dword [ebp - 0x54c], eax
xor eax, eax
mov byte [ebp - 0x101], al
lea ecx, [ebp - 0x101]
call fcn.0045aea0
mov ecx, eax
call fcn.0042d310
mov dword [ebp - 0x550], eax
mov ecx, dword [ebp - 0x54c]
mov dword [ebp - 0x2d0], ecx
cmp dword [ebp - 0x2d0], 0
je 0x46c571
xor edx, edx
mov byte [ebp - 0x102], dl
lea ecx, [ebp - 0x102]
call fcn.0045ee50
mov ecx, eax
call fcn.0042d310
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x1c4], 0
xor eax, eax
mov byte [ebp - 0x103], al
lea ecx, [ebp - 0x103]
call fcn.00452b00
mov ecx, eax
call fcn.0042d2f0
mov dword [ebp - 0x2d4], eax
xor ecx, ecx
mov byte [ebp - 0x104], cl
lea ecx, [ebp - 0x104]
call fcn.00461b50
mov ecx, eax
call fcn.0042d2f0
mov dword [ebp - 0x554], eax
xor edx, edx
mov byte [ebp - 0x105], dl
lea ecx, [ebp - 0x105]
call fcn.004600e0
mov ecx, eax
call fcn.0042d2d0
mov dword [ebp - 0x558], eax
mov eax, dword [ebp - 0x554]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0
je 0x46c610
xor ecx, ecx
mov byte [ebp - 0x106], cl
lea ecx, [ebp - 0x106]
call fcn.0045a7e0
mov ecx, eax
call fcn.0042d2d0
mov dword [ebp - 0x558], eax
mov byte [ebp - 0xf], 0
xor edx, edx
mov byte [ebp - 0x107], dl
lea ecx, [ebp - 0x107]
call fcn.004573c0
mov ecx, eax
call fcn.0042d2d0
mov dword [ebp - 0x2d8], eax
xor eax, eax
mov byte [ebp - 0x108], al
lea ecx, [ebp - 0x108]
call fcn.00454870
mov ecx, eax
call fcn.0042d2b0
mov dword [ebp - 0x55c], eax
xor ecx, ecx
mov byte [ebp - 0x109], cl
lea ecx, [ebp - 0x109]
call fcn.004559e0
mov ecx, eax
call fcn.0042d2b0
mov dword [ebp - 0x560], eax
mov edx, dword [ebp - 0x55c]
mov dword [ebp - 0x2d8], edx
cmp dword [ebp - 0x2d8], 0
je 0x46c6a9
xor eax, eax
mov byte [ebp - 0x10a], al
lea ecx, [ebp - 0x10a]
call fcn.0045cd80
mov ecx, eax
call fcn.0042d170
mov dword [ebp - 0x560], eax
movzx ecx, byte [ebp - 1]
test ecx, ecx
je 0x46ca99
xor edx, edx
mov byte [ebp - 0x10b], dl
lea ecx, [ebp - 0x10b]
call fcn.00461eb0
mov ecx, eax
call fcn.0042d170
mov dword [ebp - 0x2dc], eax
xor eax, eax
mov byte [ebp - 0x10c], al
lea ecx, [ebp - 0x10c]
call fcn.004593a0
mov ecx, eax
call fcn.0042d170
mov dword [ebp - 0x564], eax
xor ecx, ecx
mov byte [ebp - 0x10d], cl
lea ecx, [ebp - 0x10d]
call fcn.0045f990
mov ecx, eax
call fcn.0042d190
mov dword [ebp - 0x568], eax
mov edx, dword [ebp - 0x564]
mov dword [ebp - 0x2dc], edx
cmp dword [ebp - 0x2dc], 0
je 0x46c74a
xor eax, eax
mov byte [ebp - 0x10e], al
lea ecx, [ebp - 0x10e]
call fcn.004617f0
mov ecx, eax
call fcn.0042d190
mov dword [ebp - 0x568], eax
mov dword [ebp - 0x1bc], 0
jmp 0x46c765
mov ecx, dword [ebp - 0x1bc]
add ecx, 1
mov dword [ebp - 0x1bc], ecx
mov edx, dword [ebp - 8]
movzx eax, word [edx + 6]
cmp dword [ebp - 0x1bc], eax
jge 0x46ca84
xor ecx, ecx
mov byte [ebp - 0x10f], cl
lea ecx, [ebp - 0x10f]
call fcn.0045dbf0
mov ecx, eax
call fcn.0042d190
mov dword [ebp - 0x2e0], eax
xor edx, edx
mov byte [ebp - 0x110], dl
lea ecx, [ebp - 0x110]
call fcn.0045aa20
mov ecx, eax
call fcn.0042d1b0
mov dword [ebp - 0x56c], eax
xor eax, eax
mov byte [ebp - 0x111], al
lea ecx, [ebp - 0x111]
call fcn.00456640
mov ecx, eax
call fcn.0042d1b0
mov dword [ebp - 0x570], eax
mov ecx, dword [ebp - 0x56c]
mov dword [ebp - 0x2e0], ecx
cmp dword [ebp - 0x2e0], 0
je 0x46c80d
xor edx, edx
mov byte [ebp - 0x112], dl
lea ecx, [ebp - 0x112]
call fcn.0045da70
mov ecx, eax
call fcn.0042d1d0
mov dword [ebp - 0x570], eax
mov eax, dword [ebp - 8]
movzx ecx, word [eax + 0x14]
mov edx, dword [ebp - 8]
lea eax, [edx + ecx + 0x18]
imul ecx, dword [ebp - 0x1bc], 0x28
add eax, ecx
mov dword [ebp - 0x1a0], eax
xor edx, edx
mov byte [ebp - 0x113], dl
lea ecx, [ebp - 0x113]
call fcn.0045aab0
mov ecx, eax
call fcn.0042d1d0
mov dword [ebp - 0x2e4], eax
xor eax, eax
mov byte [ebp - 0x114], al
lea ecx, [ebp - 0x114]
call fcn.004579f0
mov ecx, eax
call fcn.0042d1d0
mov dword [ebp - 0x574], eax
xor ecx, ecx
mov byte [ebp - 0x115], cl
lea ecx, [ebp - 0x115]
call fcn.0045d680
mov ecx, eax
call fcn.0042d1f0
mov dword [ebp - 0x578], eax
mov edx, dword [ebp - 0x574]
mov dword [ebp - 0x2e4], edx
cmp dword [ebp - 0x2e4], 0
je 0x46c8bf
xor eax, eax
mov byte [ebp - 0x116], al
lea ecx, [ebp - 0x116]
call fcn.0045c870
mov ecx, eax
call fcn.0042d1f0
mov dword [ebp - 0x578], eax
mov ecx, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x1f0]
cmp edx, dword [ecx + 0xc]
jb 0x46c8f6
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0x1a0]
add ecx, dword [edx + 8]
cmp dword [ebp - 0x1f0], ecx
jae 0x46c8f6
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1c8], eax
xor ecx, ecx
mov byte [ebp - 0x117], cl
lea ecx, [ebp - 0x117]
call fcn.00452d40
mov ecx, eax
call fcn.0042d1f0
mov dword [ebp - 0x2e8], eax
xor edx, edx
mov byte [ebp - 0x118], dl
lea ecx, [ebp - 0x118]
call fcn.00458140
mov ecx, eax
call fcn.0042d210
mov dword [ebp - 0x57c], eax
xor eax, eax
mov byte [ebp - 0x119], al
lea ecx, [ebp - 0x119]
call fcn.0045d0e0
mov ecx, eax
call fcn.0042d210
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x2e8], ecx
cmp dword [ebp - 0x2e8], 0
je 0x46c98b
xor edx, edx
mov byte [ebp - 0x11a], dl
lea ecx, [ebp - 0x11a]
call fcn.0045fd80
mov ecx, eax
call fcn.0042d230
mov dword [ebp - 0x580], eax
push 0
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x1a8]
add eax, dword [edx + 0x14]
push eax
mov ecx, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x18]
add edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp - 0x1e8]
push eax
call dword [ebp - 0x1ac]
test eax, eax
je 0x46c9cb
mov byte [ebp - 0xd], 1
jmp 0x46c9cf
mov byte [ebp - 0xd], 0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 0x11f], cl
xor edx, edx
mov byte [ebp - 0x11b], dl
lea ecx, [ebp - 0x11b]
call fcn.00453a30
mov ecx, eax
call fcn.0042d230
mov dword [ebp - 0x2ec], eax
xor eax, eax
mov byte [ebp - 0x11c], al
lea ecx, [ebp - 0x11c]
call fcn.004609e0
mov ecx, eax
call fcn.0042d230
mov dword [ebp - 0x584], eax
xor ecx, ecx
mov byte [ebp - 0x11d], cl
lea ecx, [ebp - 0x11d]
call fcn.00454cf0
mov ecx, eax
call fcn.0042d250
mov dword [ebp - 0x588], eax
mov edx, dword [ebp - 0x584]
mov dword [ebp - 0x2ec], edx
cmp dword [ebp - 0x2ec], 0
je 0x46ca6d
xor eax, eax
mov byte [ebp - 0x11e], al
lea ecx, [ebp - 0x11e]
call fcn.0045b7a0
mov ecx, eax
call fcn.0042d250
mov dword [ebp - 0x588], eax
movzx ecx, byte [ebp - 0x11f]
test ecx, ecx
jne 0x46ca7f
xor al, al
jmp 0x46df69
jmp 0x46c756
cmp dword [ebp - 0x1c8], 0
jne 0x46ca94
xor al, al
jmp 0x46df69
jmp 0x46cd96
mov dword [ebp - 0x1c0], 0
jmp 0x46cab4
mov edx, dword [ebp - 0x1c0]
add edx, 1
mov dword [ebp - 0x1c0], edx
mov eax, dword [ebp - 8]
movzx ecx, word [eax + 6]
cmp dword [ebp - 0x1c0], ecx
jge 0x46cd96
xor edx, edx
mov byte [ebp - 0x120], dl
lea ecx, [ebp - 0x120]
call fcn.00457e70
mov ecx, eax
call fcn.0042d270
mov dword [ebp - 0x2f0], eax
xor eax, eax
mov byte [ebp - 0x121], al
lea ecx, [ebp - 0x121]
call fcn.00453f40
mov ecx, eax
call fcn.0042d270
mov dword [ebp - 0x58c], eax
xor ecx, ecx
mov byte [ebp - 0x122], cl
lea ecx, [ebp - 0x122]
call fcn.0045c1b0
mov ecx, eax
call fcn.0042d270
mov dword [ebp - 0x590], eax
mov edx, dword [ebp - 0x58c]
mov dword [ebp - 0x2f0], edx
cmp dword [ebp - 0x2f0], 0
je 0x46cb5c
xor eax, eax
mov byte [ebp - 0x123], al
lea ecx, [ebp - 0x123]
call fcn.0045c000
mov ecx, eax
call fcn.0042d290
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 8]
movzx edx, word [ecx + 0x14]
mov eax, dword [ebp - 8]
lea ecx, [eax + edx + 0x18]
imul edx, dword [ebp - 0x1c0], 0x28
add ecx, edx
mov dword [ebp - 0x1c4], ecx
xor eax, eax
mov byte [ebp - 0x124], al
lea ecx, [ebp - 0x124]
call fcn.004582f0
mov ecx, eax
call fcn.0042d290
mov dword [ebp - 0x2f4], eax
xor ecx, ecx
mov byte [ebp - 0x125], cl
lea ecx, [ebp - 0x125]
call fcn.004611c0
mov ecx, eax
call fcn.0042d290
mov dword [ebp - 0x594], eax
xor edx, edx
mov byte [ebp - 0x126], dl
lea ecx, [ebp - 0x126]
call fcn.00460830
mov ecx, eax
call fcn.0042e350
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x594]
mov dword [ebp - 0x2f4], eax
cmp dword [ebp - 0x2f4], 0
je 0x46cc0e
xor ecx, ecx
mov byte [ebp - 0x127], cl
lea ecx, [ebp - 0x127]
call fcn.0045bb30
mov ecx, eax
call fcn.0042e350
mov dword [ebp - 0x598], eax
push 0
mov edx, dword [ebp - 0x1c4]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 0x1c4]
mov edx, dword [ebp - 0x1a8]
add edx, dword [ecx + 0x14]
push edx
mov eax, dword [ebp - 0x1c4]
mov ecx, dword [ebp - 0x18]
add ecx, dword [eax + 0xc]
push ecx
mov edx, dword [ebp - 0x1e8]
push edx
call dword [ebp - 0x1ac]
test eax, eax
je 0x46cc4e
mov byte [ebp - 0xe], 1
jmp 0x46cc52
mov byte [ebp - 0xe], 0
mov al, byte [ebp - 0xe]
mov byte [ebp - 0xf], al
xor ecx, ecx
mov byte [ebp - 0x128], cl
lea ecx, [ebp - 0x128]
call fcn.00456880
mov ecx, eax
call fcn.0042e370
mov dword [ebp - 0x2f8], eax
xor edx, edx
mov byte [ebp - 0x129], dl
lea ecx, [ebp - 0x129]
call fcn.00457840
mov ecx, eax
call fcn.0042e370
mov dword [ebp - 0x59c], eax
xor eax, eax
mov byte [ebp - 0x12a], al
lea ecx, [ebp - 0x12a]
call fcn.00456370
mov ecx, eax
call fcn.0042e370
mov dword [ebp - 0x5a0], eax
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - 0x2f8], ecx
cmp dword [ebp - 0x2f8], 0
je 0x46cced
xor edx, edx
mov byte [ebp - 0x12b], dl
lea ecx, [ebp - 0x12b]
call fcn.004588e0
mov ecx, eax
call fcn.0042e390
mov dword [ebp - 0x5a0], eax
movzx eax, byte [ebp - 0xf]
test eax, eax
jne 0x46ccfc
xor al, al
jmp 0x46df69
xor ecx, ecx
mov byte [ebp - 0x12c], cl
lea ecx, [ebp - 0x12c]
call fcn.0045e550
mov ecx, eax
call fcn.0042e390
mov dword [ebp - 0x2fc], eax
xor edx, edx
mov byte [ebp - 0x12d], dl
lea ecx, [ebp - 0x12d]
call fcn.00454450
mov ecx, eax
call fcn.0042e390
mov dword [ebp - 0x5a4], eax
xor eax, eax
mov byte [ebp - 0x12e], al
lea ecx, [ebp - 0x12e]
call fcn.0045b320
mov ecx, eax
call fcn.0042e3b0
mov dword [ebp - 0x5a8], eax
mov ecx, dword [ebp - 0x5a4]
mov dword [ebp - 0x2fc], ecx
cmp dword [ebp - 0x2fc], 0
je 0x46cd91
xor edx, edx
mov byte [ebp - 0x12f], dl
lea ecx, [ebp - 0x12f]
call fcn.0045e040
mov ecx, eax
call fcn.0042e3b0
mov dword [ebp - 0x5a8], eax
jmp 0x46caa5
xor eax, eax
mov byte [ebp - 0x130], al
lea ecx, [ebp - 0x130]
call fcn.004578d0
mov ecx, eax
call fcn.0042e3d0
mov dword [ebp - 0x300], eax
xor ecx, ecx
mov byte [ebp - 0x131], cl
lea ecx, [ebp - 0x131]
call fcn.0045f750
mov ecx, eax
call fcn.0042e3d0
mov dword [ebp - 0x5ac], eax
xor edx, edx
mov byte [ebp - 0x132], dl
lea ecx, [ebp - 0x132]
call fcn.00453910
mov ecx, eax
call fcn.0042e3d0
mov dword [ebp - 0x5b0], eax
mov eax, dword [ebp - 0x5ac]
mov dword [ebp - 0x300], eax
cmp dword [ebp - 0x300], 0
je 0x46ce2b
xor ecx, ecx
mov byte [ebp - 0x133], cl
lea ecx, [ebp - 0x133]
call fcn.00454180
mov ecx, eax
call fcn.0042e270
mov dword [ebp - 0x5b0], eax
movzx edx, byte [ebp - 1]
test edx, edx
je 0x46da9c
mov dword [ebp - 0x1a4], 0
xor eax, eax
mov byte [ebp - 0x134], al
lea ecx, [ebp - 0x134]
call fcn.00461880
mov ecx, eax
call fcn.0042e270
mov dword [ebp - 0x304], eax
xor ecx, ecx
mov byte [ebp - 0x135], cl
lea ecx, [ebp - 0x135]
call fcn.0045c120
mov ecx, eax
call fcn.0042e290
mov dword [ebp - 0x5b4], eax
xor edx, edx
mov byte [ebp - 0x136], dl
lea ecx, [ebp - 0x136]
call fcn.0045d290
mov ecx, eax
call fcn.0042e290
mov dword [ebp - 0x5b8], eax
mov eax, dword [ebp - 0x5b4]
mov dword [ebp - 0x304], eax
cmp dword [ebp - 0x304], 0
je 0x46ced6
xor ecx, ecx
mov byte [ebp - 0x137], cl
lea ecx, [ebp - 0x137]
call fcn.0045a480
mov ecx, eax
call fcn.0042e290
mov dword [ebp - 0x5b8], eax
mov edx, dword [ebp - 0x1a4]
cmp edx, dword [ebp - 0x1ec]
jae 0x46da9c
xor eax, eax
mov byte [ebp - 0x138], al
lea ecx, [ebp - 0x138]
call fcn.004595e0
mov ecx, eax
call fcn.0042e2b0
mov dword [ebp - 0x308], eax
xor ecx, ecx
mov byte [ebp - 0x139], cl
lea ecx, [ebp - 0x139]
call fcn.00456760
mov ecx, eax
call fcn.0042e2b0
mov dword [ebp - 0x5bc], eax
xor edx, edx
mov byte [ebp - 0x13a], dl
lea ecx, [ebp - 0x13a]
call fcn.00454bd0
mov ecx, eax
call fcn.0042e2b0
mov dword [ebp - 0x5c0], eax
mov eax, dword [ebp - 0x5bc]
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x308], 0
je 0x46cf7d
xor ecx, ecx
mov byte [ebp - 0x13b], cl
lea ecx, [ebp - 0x13b]
call fcn.004572a0
mov ecx, eax
call fcn.0042e2d0
mov dword [ebp - 0x5c0], eax
mov eax, dword [ebp - 0x1a8]
cdq
mov edx, dword [ebp - 0x1c8]
add eax, dword [edx + 0x14]
add eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x328], eax
xor eax, eax
mov byte [ebp - 0x13c], al
lea ecx, [ebp - 0x13c]
call fcn.00460560
mov ecx, eax
call fcn.0042e2d0
mov dword [ebp - 0x30c], eax
xor ecx, ecx
mov byte [ebp - 0x13d], cl
lea ecx, [ebp - 0x13d]
call fcn.00456520
mov ecx, eax
call fcn.0042e2f0
mov dword [ebp - 0x5c4], eax
xor edx, edx
mov byte [ebp - 0x13e], dl
lea ecx, [ebp - 0x13e]
call fcn.004543c0
mov ecx, eax
call fcn.0042e2f0
mov dword [ebp - 0x5c8], eax
mov eax, dword [ebp - 0x5c4]
mov dword [ebp - 0x30c], eax
cmp dword [ebp - 0x30c], 0
je 0x46d02e
xor ecx, ecx
mov byte [ebp - 0x13f], cl
lea ecx, [ebp - 0x13f]
call fcn.00456f40
mov ecx, eax
call fcn.0042e2f0
mov dword [ebp - 0x5c8], eax
mov edx, dword [ebp - 0x1a4]
add edx, 8
mov dword [ebp - 0x1a4], edx
xor eax, eax
mov byte [ebp - 0x140], al
lea ecx, [ebp - 0x140]
call fcn.00454990
mov ecx, eax
call fcn.00452220
mov dword [ebp - 0x310], eax
xor ecx, ecx
mov byte [ebp - 0x141], cl
lea ecx, [ebp - 0x141]
call fcn.00455440
mov ecx, eax
call fcn.00452220
mov dword [ebp - 0x5cc], eax
xor edx, edx
mov byte [ebp - 0x142], dl
lea ecx, [ebp - 0x142]
call fcn.00459280
mov ecx, eax
call fcn.00452240
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x5cc]
mov dword [ebp - 0x310], eax
cmp dword [ebp - 0x310], 0
je 0x46d0d2
xor ecx, ecx
mov byte [ebp - 0x143], cl
lea ecx, [ebp - 0x143]
call fcn.00454c60
mov ecx, eax
call fcn.00452240
mov dword [ebp - 0x5d0], eax
mov edx, dword [ebp - 0x328]
mov eax, dword [edx + 4]
sub eax, 8
shr eax, 1
mov dword [ebp - 0x5dc], eax
xor ecx, ecx
mov byte [ebp - 0x144], cl
lea ecx, [ebp - 0x144]
call fcn.0045d200
mov ecx, eax
call fcn.00452240
mov dword [ebp - 0x314], eax
xor edx, edx
mov byte [ebp - 0x145], dl
lea ecx, [ebp - 0x145]
call fcn.0045c510
mov ecx, eax
call fcn.00452260
mov dword [ebp - 0x5d4], eax
xor eax, eax
mov byte [ebp - 0x146], al
lea ecx, [ebp - 0x146]
call fcn.00459670
mov ecx, eax
call fcn.00452260
mov dword [ebp - 0x5d8], eax
mov ecx, dword [ebp - 0x5d4]
mov dword [ebp - 0x314], ecx
cmp dword [ebp - 0x314], 0
je 0x46d17b
xor edx, edx
mov byte [ebp - 0x147], dl
lea ecx, [ebp - 0x147]
call fcn.0045c2d0
mov ecx, eax
call fcn.00452260
mov dword [ebp - 0x5d8], eax
mov dword [ebp - 0x1d8], 0
jmp 0x46d196
mov eax, dword [ebp - 0x1d8]
add eax, 1
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x1d8]
cmp ecx, dword [ebp - 0x5dc]
jae 0x46da97
xor edx, edx
mov byte [ebp - 0x148], dl
lea ecx, [ebp - 0x148]
call fcn.004612e0
mov ecx, eax
call fcn.00452280
mov dword [ebp - 0x318], eax
xor eax, eax
mov byte [ebp - 0x149], al
lea ecx, [ebp - 0x149]
call fcn.004550e0
mov ecx, eax
call fcn.00452280
mov dword [ebp - 0x5e0], eax
xor ecx, ecx
mov byte [ebp - 0x14a], cl
lea ecx, [ebp - 0x14a]
call fcn.0045be00
mov ecx, eax
call fcn.004522a0
mov dword [ebp - 0x5e4], eax
mov edx, dword [ebp - 0x5e0]
mov dword [ebp - 0x318], edx
cmp dword [ebp - 0x318], 0
je 0x46d23d
xor eax, eax
mov byte [ebp - 0x14b], al
lea ecx, [ebp - 0x14b]
call fcn.004553b0
mov ecx, eax
call fcn.004522a0
mov dword [ebp - 0x5e4], eax
mov eax, dword [ebp - 0x1a8]
cdq
mov ecx, dword [ebp - 0x1c8]
add eax, dword [ecx + 0x14]
add eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x32c], eax
xor edx, edx
mov byte [ebp - 0x14c], dl
lea ecx, [ebp - 0x14c]
call fcn.004620f0
mov ecx, eax
call fcn.004522a0
mov dword [ebp - 0x31c], eax
xor eax, eax
mov byte [ebp - 0x14d], al
lea ecx, [ebp - 0x14d]
call fcn.00457c30
mov ecx, eax
call fcn.004522c0
mov dword [ebp - 0x5e8], eax
xor ecx, ecx
mov byte [ebp - 0x14e], cl
lea ecx, [ebp - 0x14e]
call fcn.00459b80
mov ecx, eax
call fcn.004522c0
mov dword [ebp - 0x5ec], eax
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x31c], edx
cmp dword [ebp - 0x31c], 0
je 0x46d2ee
xor eax, eax
mov byte [ebp - 0x14f], al
lea ecx, [ebp - 0x14f]
call fcn.004544e0
mov ecx, eax
call fcn.004522c0
mov dword [ebp - 0x5ec], eax
mov ecx, dword [ebp - 0x1a4]
add ecx, 2
mov dword [ebp - 0x1a4], ecx
xor edx, edx
mov byte [ebp - 0x150], dl
lea ecx, [ebp - 0x150]
call fcn.00456d00
mov ecx, eax
call fcn.004522e0
mov dword [ebp - 0x320], eax
xor eax, eax
mov byte [ebp - 0x151], al
lea ecx, [ebp - 0x151]
call fcn.00458e80
mov ecx, eax
call fcn.004522e0
mov dword [ebp - 0x5f0], eax
xor ecx, ecx
mov byte [ebp - 0x152], cl
lea ecx, [ebp - 0x152]
call fcn.00457d50
mov ecx, eax
call fcn.00452300
mov dword [ebp - 0x5f4], eax
mov edx, dword [ebp - 0x5f0]
mov dword [ebp - 0x320], edx
cmp dword [ebp - 0x320], 0
je 0x46d392
xor eax, eax
mov byte [ebp - 0x153], al
lea ecx, [ebp - 0x153]
call fcn.00459700
mov ecx, eax
call fcn.00452300
mov dword [ebp - 0x5f4], eax
mov ecx, dword [ebp - 0x32c]
mov dx, word [ecx]
shr dx, 0xc
and dx, 0xf
movzx eax, dx
test eax, eax
jne 0x46d3af
jmp 0x46d187
xor ecx, ecx
mov byte [ebp - 0x154], cl
lea ecx, [ebp - 0x154]
call fcn.00454fc0
mov ecx, eax
call fcn.00452300
mov dword [ebp - 0x324], eax
xor edx, edx
mov byte [ebp - 0x155], dl
lea ecx, [ebp - 0x155]
call fcn.00455b90
mov ecx, eax
call fcn.00452320
mov dword [ebp - 0x5f8], eax
xor eax, eax
mov byte [ebp - 0x156], al
lea ecx, [ebp - 0x156]
call fcn.00453880
mov ecx, eax
call fcn.00452320
mov dword [ebp - 0x5fc], eax
mov ecx, dword [ebp - 0x5f8]
mov dword [ebp - 0x324], ecx
cmp dword [ebp - 0x324], 0
je 0x46d444
xor edx, edx
mov byte [ebp - 0x157], dl
lea ecx, [ebp - 0x157]
call fcn.004536d0
mov ecx, eax
call fcn.00452340
mov dword [ebp - 0x5fc], eax
mov eax, dword [ebp - 0x18]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [ebp - 0x328]
xor eax, eax
add ecx, dword [edx]
adc esi, eax
mov edx, 0xfff
mov eax, dword [ebp - 0x32c]
and dx, word [eax]
movzx eax, dx
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x694], ecx
mov dword [ebp - 0x690], esi
xor ecx, ecx
mov byte [ebp - 0x158], cl
lea ecx, [ebp - 0x158]
call fcn.0045a900
mov ecx, eax
call fcn.00452340
mov dword [ebp - 0x330], eax
xor edx, edx
mov byte [ebp - 0x159], dl
lea ecx, [ebp - 0x159]
call fcn.00461490
mov ecx, eax
call fcn.00452340
mov dword [ebp - 0x600], eax
xor eax, eax
mov byte [ebp - 0x15a], al
lea ecx, [ebp - 0x15a]
call fcn.0045d7a0
mov ecx, eax
call fcn.00452360
mov dword [ebp - 0x604], eax
mov ecx, dword [ebp - 0x600]
mov dword [ebp - 0x330], ecx
cmp dword [ebp - 0x330], 0
je 0x46d50f
xor edx, edx
mov byte [ebp - 0x15b], dl
lea ecx, [ebp - 0x15b]
call fcn.00454a20
mov ecx, eax
call fcn.00452360
mov dword [ebp - 0x604], eax
mov dword [ebp - 0x1d0], 0
xor eax, eax
mov byte [ebp - 0x15c], al
lea ecx, [ebp - 0x15c]
call fcn.00460050
mov ecx, eax
call fcn.00452360
mov dword [ebp - 0x334], eax
xor ecx, ecx
mov byte [ebp - 0x15d], cl
lea ecx, [ebp - 0x15d]
call fcn.0045a630
mov ecx, eax
call fcn.00452380
mov dword [ebp - 0x608], eax
xor edx, edx
mov byte [ebp - 0x15e], dl
lea ecx, [ebp - 0x15e]
call fcn.0045b4d0
mov ecx, eax
call fcn.00452380
mov dword [ebp - 0x60c], eax
mov eax, dword [ebp - 0x608]
mov dword [ebp - 0x334], eax
cmp dword [ebp - 0x334], 0
je 0x46d5ae
xor ecx, ecx
mov byte [ebp - 0x15f], cl
lea ecx, [ebp - 0x15f]
call fcn.00452c20
mov ecx, eax
call fcn.004523a0
mov dword [ebp - 0x60c], eax
xor edx, edx
mov byte [ebp - 0x160], dl
lea eax, [ebp - 0x6cc]
push eax
lea ecx, [ebp - 0x160]
call fcn.00458800
nop
xor ecx, ecx
mov byte [ebp - 0x161], cl
lea ecx, [ebp - 0x161]
call fcn.00459820
mov ecx, eax
call fcn.004523a0
mov dword [ebp - 0x338], eax
xor edx, edx
mov byte [ebp - 0x162], dl
lea ecx, [ebp - 0x162]
call fcn.004615b0
mov ecx, eax
call fcn.004523a0
mov dword [ebp - 0x610], eax
xor eax, eax
mov byte [ebp - 0x163], al
lea ecx, [ebp - 0x163]
call fcn.00457450
mov ecx, eax
call fcn.004523c0
mov dword [ebp - 0x614], eax
mov ecx, dword [ebp - 0x610]
mov dword [ebp - 0x338], ecx
cmp dword [ebp - 0x338], 0
je 0x46d65e
xor edx, edx
mov byte [ebp - 0x164], dl
lea ecx, [ebp - 0x164]
call fcn.00462330
mov ecx, eax
call fcn.004523c0
mov dword [ebp - 0x614], eax
xor eax, eax
mov byte [ebp - 0x165], al
lea ecx, [ebp - 0x6cc]
call fcn.00468a40
push eax
mov ecx, dword [ebp - 0x1cc]
push ecx
lea ecx, [ebp - 0x165]
call fcn.0045d3b0
mov ecx, eax
call fcn.004529c0
mov edx, dword [eax*4 + 0x5c0780]
call edx
mov dword [ebp - 0x348], eax
cmp dword [ebp - 0x348], 0
jne 0x46d6aa
xor al, al
jmp 0x46df69
xor eax, eax
mov byte [ebp - 0x166], al
lea ecx, [ebp - 0x166]
call fcn.00453ac0
mov ecx, eax
call fcn.004523e0
mov dword [ebp - 0x33c], eax
xor ecx, ecx
mov byte [ebp - 0x167], cl
lea ecx, [ebp - 0x167]
call fcn.00456250
mov ecx, eax
call fcn.00452400
mov dword [ebp - 0x618], eax
xor edx, edx
mov byte [ebp - 0x168], dl
lea ecx, [ebp - 0x168]
call fcn.004616d0
mov ecx, eax
call fcn.00452400
mov dword [ebp - 0x61c], eax
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x33c], eax
cmp dword [ebp - 0x33c], 0
je 0x46d73f
xor ecx, ecx
mov byte [ebp - 0x169], cl
lea ecx, [ebp - 0x169]
call fcn.0045cf30
mov ecx, eax
call fcn.00452400
mov dword [ebp - 0x61c], eax
lea ecx, [ebp - 0x6cc]
call fcn.00468db0
nop
xor edx, edx
mov byte [ebp - 0x16a], dl
lea ecx, [ebp - 0x16a]
call fcn.00460440
mov ecx, eax
call fcn.00452420
mov dword [ebp - 0x340], eax
xor eax, eax
mov byte [ebp - 0x16b], al
lea ecx, [ebp - 0x16b]
call fcn.0045acf0
mov ecx, eax
call fcn.00452420
mov dword [ebp - 0x620], eax
xor ecx, ecx
mov byte [ebp - 0x16c], cl
lea ecx, [ebp - 0x16c]
call fcn.00455950
mov ecx, eax
call fcn.00452440
mov dword [ebp - 0x624], eax
mov edx, dword [ebp - 0x620]
mov dword [ebp - 0x340], edx
cmp dword [ebp - 0x340], 0
je 0x46d7e0
xor eax, eax
mov byte [ebp - 0x16d], al
lea ecx, [ebp - 0x16d]
call fcn.00452ef0
mov ecx, eax
call fcn.00452440
mov dword [ebp - 0x624], eax
lea ecx, [ebp - 0x6cc]
call fcn.00467970
nop
xor ecx, ecx
mov byte [ebp - 0x16e], cl
lea ecx, [ebp - 0x16e]
call fcn.00453c70
mov ecx, eax
call fcn.00452440
mov dword [ebp - 0x344], eax
xor edx, edx
mov byte [ebp - 0x16f], dl
lea ecx, [ebp - 0x16f]
call fcn.00459940
mov ecx, eax
call fcn.00452460
mov dword [ebp - 0x628], eax
xor eax, eax
mov byte [ebp - 0x170], al
lea ecx, [ebp - 0x170]
call fcn.00458650
mov ecx, eax
call fcn.00452460
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x628]
mov dword [ebp - 0x344], ecx
cmp dword [ebp - 0x344], 0
je 0x46d881
xor edx, edx
mov byte [ebp - 0x171], dl
lea ecx, [ebp - 0x171]
call fcn.0045ca20
mov ecx, eax
call fcn.00452460
mov dword [ebp - 0x62c], eax
push 0
push 4
lea eax, [ebp - 0x1d0]
push eax
mov ecx, dword [ebp - 0x694]
push ecx
mov edx, dword [ebp - 0x1e8]
push edx
call dword [ebp - 0x348]
nop
xor eax, eax
mov byte [ebp - 0x172], al
lea ecx, [ebp - 0x172]
call fcn.00461010
mov ecx, eax
call fcn.00452480
mov dword [ebp - 0x34c], eax
xor ecx, ecx
mov byte [ebp - 0x173], cl
lea ecx, [ebp - 0x173]
call fcn.00459af0
mov ecx, eax
call fcn.00452480
mov dword [ebp - 0x630], eax
xor edx, edx
mov byte [ebp - 0x174], dl
lea ecx, [ebp - 0x174]
call fcn.0045d440
mov ecx, eax
call fcn.004524a0
mov dword [ebp - 0x634], eax
mov eax, dword [ebp - 0x630]
mov dword [ebp - 0x34c], eax
cmp dword [ebp - 0x34c], 0
je 0x46d936
xor ecx, ecx
mov byte [ebp - 0x175], cl
lea ecx, [ebp - 0x175]
call fcn.00454750
mov ecx, eax
call fcn.004524a0
mov dword [ebp - 0x634], eax
mov edx, dword [ebp - 0x1d0]
add edx, dword [ebp - 0x638]
mov dword [ebp - 0x1d0], edx
xor eax, eax
mov byte [ebp - 0x176], al
lea ecx, [ebp - 0x176]
call fcn.00455320
mov ecx, eax
call fcn.004524a0
mov dword [ebp - 0x350], eax
xor ecx, ecx
mov byte [ebp - 0x177], cl
lea ecx, [ebp - 0x177]
call fcn.0045f6c0
mov ecx, eax
call fcn.004524c0
mov dword [ebp - 0x63c], eax
xor edx, edx
mov byte [ebp - 0x178], dl
lea ecx, [ebp - 0x178]
call fcn.0045ba70
mov ecx, eax
call fcn.004524c0
mov dword [ebp - 0x640], eax
mov eax, dword [ebp - 0x63c]
mov dword [ebp - 0x350], eax
cmp dword [ebp - 0x350], 0
je 0x46d9dd
xor ecx, ecx
mov byte [ebp - 0x179], cl
lea ecx, [ebp - 0x179]
call fcn.0045d8c0
mov ecx, eax
call fcn.004524e0
mov dword [ebp - 0x640], eax
push 0
push 4
lea edx, [ebp - 0x1d0]
push edx
mov eax, dword [ebp - 0x694]
push eax
mov ecx, dword [ebp - 0x1e8]
push ecx
call dword [ebp - 0x1ac]
nop
xor edx, edx
mov byte [ebp - 0x17a], dl
lea ecx, [ebp - 0x17a]
call fcn.0045b560
mov ecx, eax
call fcn.004524e0
mov dword [ebp - 0x354], eax
xor eax, eax
mov byte [ebp - 0x17b], al
lea ecx, [ebp - 0x17b]
call fcn.0045c990
mov ecx, eax
call fcn.004524e0
mov dword [ebp - 0x644], eax
xor ecx, ecx
mov byte [ebp - 0x17c], cl
lea ecx, [ebp - 0x17c]
call fcn.004603b0
mov ecx, eax
call fcn.00452500
mov dword [ebp - 0x648], eax
mov edx, dword [ebp - 0x644]
mov dword [ebp - 0x354], edx
cmp dword [ebp - 0x354], 0
je 0x46da92
xor eax, eax
mov byte [ebp - 0x17d], al
lea ecx, [ebp - 0x17d]
call fcn.004554d0
mov ecx, eax
call fcn.00452500
mov dword [ebp - 0x648], eax
jmp 0x46d187
jmp 0x46ced6
xor ecx, ecx
mov byte [ebp - 0x17e], cl
lea ecx, [ebp - 0x17e]
call fcn.00460dd0
mov ecx, eax
call fcn.00452500
mov dword [ebp - 0x358], eax
xor edx, edx
mov byte [ebp - 0x17f], dl
lea ecx, [ebp - 0x17f]
call fcn.0045ec10
mov ecx, eax
call fcn.00452520
mov dword [ebp - 0x64c], eax
xor eax, eax
mov byte [ebp - 0x180], al
lea ecx, [ebp - 0x180]
call fcn.00461ac0
mov ecx, eax
call fcn.00452520
mov dword [ebp - 0x650], eax
mov ecx, dword [ebp - 0x64c]
mov dword [ebp - 0x358], ecx
cmp dword [ebp - 0x358], 0
je 0x46db31
xor edx, edx
mov byte [ebp - 0x181], dl
lea ecx, [ebp - 0x181]
call fcn.00453640
mov ecx, eax
call fcn.00452540
mov dword [ebp - 0x650], eax
mov dword [ebp - 0xc14], 0x10007
xor eax, eax
mov byte [ebp - 0x182], al
lea ecx, [ebp - 0x182]
call fcn.0045afc0
mov ecx, eax
call fcn.00452540
mov dword [ebp - 0x35c], eax
xor ecx, ecx
mov byte [ebp - 0x183], cl
lea ecx, [ebp - 0x183]
call fcn.0045c240
mov ecx, eax
call fcn.00452540
mov dword [ebp - 0x654], eax
xor edx, edx
mov byte [ebp - 0x184], dl
lea ecx, [ebp - 0x184]
call fcn.00461e20
mov ecx, eax
call fcn.00452560
mov dword [ebp - 0x658], eax
mov eax, dword [ebp - 0x654]
mov dword [ebp - 0x35c], eax
cmp dword [ebp - 0x35c], 0
je 0x46dbd0
xor ecx, ecx
mov byte [ebp - 0x185], cl
lea ecx, [ebp - 0x185]
call fcn.0045cb40
mov ecx, eax
call fcn.00452560
mov dword [ebp - 0x658], eax
lea edx, [ebp - 0xc14]
push edx
mov eax, dword [ebp - 0x1e4]
push eax
call fcn.00469980
add esp, 8
test eax, eax
je 0x46dbf0
mov byte [ebp - 0x10], 1
jmp 0x46dbf4
mov byte [ebp - 0x10], 0
mov cl, byte [ebp - 0x10]
mov byte [ebp - 0x1d3], cl
xor edx, edx
mov byte [ebp - 0x186], dl
lea ecx, [ebp - 0x186]
call fcn.00458410
mov ecx, eax
call fcn.00452560
mov dword [ebp - 0x360], eax
xor eax, eax
mov byte [ebp - 0x187], al
lea ecx, [ebp - 0x187]
call fcn.00455200
mov ecx, eax
call fcn.00452580
mov dword [ebp - 0x65c], eax
xor ecx, ecx
mov byte [ebp - 0x188], cl
lea ecx, [ebp - 0x188]
call fcn.004623c0
mov ecx, eax
call fcn.00452580
mov dword [ebp - 0x660], eax
mov edx, dword [ebp - 0x65c]
mov dword [ebp - 0x360], edx
cmp dword [ebp - 0x360], 0
je 0x46dc92
xor eax, eax
mov byte [ebp - 0x189], al
lea ecx, [ebp - 0x189]
call fcn.004530a0
mov ecx, eax
call fcn.004525a0
mov dword [ebp - 0x660], eax
push 0
push 4
lea ecx, [ebp - 0x18]
push ecx
mov edx, dword [ebp - 0xb70]
add edx, 8
push edx
mov eax, dword [ebp - 0x1e8]
push eax
call dword [ebp - 0x1ac]
test eax, eax
je 0x46dcbb
mov byte [ebp - 0x11], 1
jmp 0x46dcbf
mov byte [ebp - 0x11], 0
mov cl, byte [ebp - 0x11]
mov byte [ebp - 0x1d1], cl
xor edx, edx
mov byte [ebp - 0x18a], dl
lea ecx, [ebp - 0x18a]
call fcn.004555f0
mov ecx, eax
call fcn.004525a0
mov dword [ebp - 0x364], eax
xor eax, eax
mov byte [ebp - 0x18b], al
lea ecx, [ebp - 0x18b]
call fcn.00454f30
mov ecx, eax
call fcn.004525a0
mov dword [ebp - 0x664], eax
xor ecx, ecx
mov byte [ebp - 0x18c], cl
lea ecx, [ebp - 0x18c]
call fcn.00456130
mov ecx, eax
call fcn.004525c0
mov dword [ebp - 0x668], eax
mov edx, dword [ebp - 0x664]
mov dword [ebp - 0x364], edx
cmp dword [ebp - 0x364], 0
je 0x46dd5d
xor eax, eax
mov byte [ebp - 0x18d], al
lea ecx, [ebp - 0x18d]
call fcn.0045a120
mov ecx, eax
call fcn.004525c0
mov dword [ebp - 0x668], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x18]
add edx, dword [ecx + 0x28]
mov dword [ebp - 0xb64], edx
xor eax, eax
mov byte [ebp - 0x18e], al
lea ecx, [ebp - 0x18e]
call fcn.0045a090
mov ecx, eax
call fcn.004525e0
mov dword [ebp - 0x368], eax
xor ecx, ecx
mov byte [ebp - 0x18f], cl
lea ecx, [ebp - 0x18f]
call fcn.0045f360
mov ecx, eax
call fcn.004525e0
mov dword [ebp - 0x66c], eax
xor edx, edx
mov byte [ebp - 0x190], dl
lea ecx, [ebp - 0x190]
call fcn.00457ba0
mov ecx, eax
call fcn.004525e0
mov dword [ebp - 0x670], eax
mov eax, dword [ebp - 0x66c]
mov dword [ebp - 0x368], eax
cmp dword [ebp - 0x368], 0
je 0x46de01
xor ecx, ecx
mov byte [ebp - 0x191], cl
lea ecx, [ebp - 0x191]
call fcn.004574e0
mov ecx, eax
call fcn.00452600
mov dword [ebp - 0x670], eax
lea edx, [ebp - 0xc14]
push edx
mov eax, dword [ebp - 0x1e4]
push eax
call fcn.00469a10
add esp, 8
test eax, eax
je 0x46de21
mov byte [ebp - 0x12], 1
jmp 0x46de25
mov byte [ebp - 0x12], 0
mov cl, byte [ebp - 0x12]
mov byte [ebp - 0x1d2], cl
xor edx, edx
mov byte [ebp - 0x192], dl
lea ecx, [ebp - 0x192]
call fcn.0045a000
mov ecx, eax
call fcn.00452600
mov dword [ebp - 0x36c], eax
xor eax, eax
mov byte [ebp - 0x193], al
lea ecx, [ebp - 0x193]
call fcn.0045a5a0
mov ecx, eax
call fcn.00452600
mov dword [ebp - 0x674], eax
xor ecx, ecx
mov byte [ebp - 0x194], cl
lea ecx, [ebp - 0x194]
call fcn.00455a70
mov ecx, eax
call fcn.00452620
mov dword [ebp - 0x678], eax
mov edx, dword [ebp - 0x674]
mov dword [ebp - 0x36c], edx
cmp dword [ebp - 0x36c], 0
je 0x46dec3
xor eax, eax
mov byte [ebp - 0x195], al
lea ecx, [ebp - 0x195]
call fcn.00453130
mov ecx, eax
call fcn.00452620
mov dword [ebp - 0x678], eax
mov ecx, dword [ebp - 0x1e4]
push ecx
call fcn.004699e0
add esp, 4
xor edx, edx
mov byte [ebp - 0x196], dl
lea ecx, [ebp - 0x196]
call fcn.0045a870
mov ecx, eax
call fcn.00452640
mov dword [ebp - 0x370], eax
xor eax, eax
mov byte [ebp - 0x197], al
lea ecx, [ebp - 0x197]
call fcn.0045f1b0
mov ecx, eax
call fcn.00452640
mov dword [ebp - 0x67c], eax
xor ecx, ecx
mov byte [ebp - 0x198], cl
lea ecx, [ebp - 0x198]
call fcn.004581d0
mov ecx, eax
call fcn.00452640
mov dword [ebp - 0x680], eax
mov edx, dword [ebp - 0x67c]
mov dword [ebp - 0x370], edx
cmp dword [ebp - 0x370], 0
je 0x46df67
xor eax, eax
mov byte [ebp - 0x199], al
lea ecx, [ebp - 0x199]
call fcn.004580b0
mov ecx, eax
call fcn.00452660
mov dword [ebp - 0x680], eax
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret