Function at 0x43b770
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x636e13
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x680
mov dword [ebp - 0x50c], ecx
mov dword [ebp - 0x508], 0
lea ecx, [ebp - 0x218]
call fcn.00404a30
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
push eax
push 0x660f10
lea ecx, [ebp - 0x440]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x510], eax
mov edx, dword [ebp - 0x510]
mov dword [ebp - 0x514], edx
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x514]
call fcn.00404a70
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00404bd0
add esp, 0xc
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x440]
call fcn.00404a50
push 0x64
push 0x660ef0
lea ecx, [ebp - 0x444]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x518], eax
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x51c], edx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x51c]
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1070]
mov edx, dword [eax + 0x180]
call edx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x444]
call fcn.00404a50
mov eax, dword [ebp - 0x50c]
fld dword [eax + 0xbc]
fmul qword [0x660ee8]
fadd qword [0x65a550]
call fcn.0061b370
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1070]
mov edx, dword [eax + 0x18c]
call edx
push 0xbc638
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x1070]
mov eax, dword [edx + 0x16c]
call eax
push 0
push 0
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1070]
mov edx, dword [eax + 0x168]
call edx
push 1
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x1070]
mov eax, dword [edx + 0x198]
call eax
lea ecx, [ebp - 0x218]
call fcn.00404a70
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1070
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1070]
mov edx, dword [eax + 0x170]
call edx
lea ecx, [ebp - 0x220]
call fcn.00404a30
mov byte [ebp - 4], 3
mov eax, dword [ebp + 0xc]
push eax
push 0x660f10
lea ecx, [ebp - 0x448]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x520], eax
mov edx, dword [ebp - 0x520]
mov dword [ebp - 0x524], edx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x524]
call fcn.00404a70
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.00404bd0
add esp, 0xc
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x448]
call fcn.00404a50
push 0x64
push 0x660ef0
lea ecx, [ebp - 0x44c]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x528], eax
mov edx, dword [ebp - 0x528]
mov dword [ebp - 0x52c], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x52c]
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1194]
mov edx, dword [eax + 0x180]
call edx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x44c]
call fcn.00404a50
mov eax, dword [ebp - 0x50c]
fld dword [eax + 0xbc]
fmul qword [0x660ee8]
fadd qword [0x65a550]
call fcn.0061b370
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1194]
mov edx, dword [eax + 0x18c]
call edx
push 0xbc638
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x1194]
mov eax, dword [edx + 0x16c]
call eax
push 0
push 0
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1194]
mov edx, dword [eax + 0x168]
call edx
push 1
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x1194]
mov eax, dword [edx + 0x198]
call eax
lea ecx, [ebp - 0x220]
call fcn.00404a70
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x1194
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x1194]
mov edx, dword [eax + 0x170]
call edx
mov dword [ebp - 0x21c], 0xff
push 0xff
lea eax, [ebp - 0x42c]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.00444900
add esp, 0x10
push 0x660cac
lea eax, [ebp - 0x454]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x530], eax
mov ecx, dword [ebp - 0x530]
mov dword [ebp - 0x534], ecx
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x508]
or edx, 1
mov dword [ebp - 0x508], edx
mov ecx, dword [ebp - 0x534]
call fcn.00404a70
push eax
lea eax, [ebp - 0x42c]
push eax
call fcn.00444200
add esp, 8
test eax, eax
je 0x43bbd1
mov ecx, 0x6da338
call fcn.0045e660
push eax
mov ecx, 0x6da338
call fcn.0045e570
push eax
push 0x65a5ac
lea ecx, [ebp - 0x458]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x538], eax
mov edx, dword [ebp - 0x538]
mov dword [ebp - 0x53c], edx
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x508]
or eax, 2
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x53c]
call fcn.00404a70
push eax
call fcn.0044a480
add esp, 8
test eax, eax
jne 0x43bbd1
mov dword [ebp - 0x540], 1
jmp 0x43bbdb
mov dword [ebp - 0x540], 0
mov cl, byte [ebp - 0x540]
mov byte [ebp - 0x44d], cl
mov dword [ebp - 4], 6
mov edx, dword [ebp - 0x508]
and edx, 2
je 0x43bc0b
and dword [ebp - 0x508], 0xfffffffd
lea ecx, [ebp - 0x458]
call fcn.00404a50
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x508]
and eax, 1
je 0x43bc2f
and dword [ebp - 0x508], 0xfffffffe
lea ecx, [ebp - 0x454]
call fcn.00404a50
movzx ecx, byte [ebp - 0x44d]
test ecx, ecx
je 0x43bee8
lea edx, [ebp - 0x42c]
push edx
lea ecx, [ebp - 0x430]
call fcn.004088d0
mov byte [ebp - 4], 8
push 0x660ca4
lea eax, [ebp - 0x45c]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x544], eax
mov ecx, dword [ebp - 0x544]
mov dword [ebp - 0x548], ecx
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x548]
call fcn.00404a70
push eax
push 0x660c9c
lea edx, [ebp - 0x460]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x54c], eax
mov eax, dword [ebp - 0x54c]
mov dword [ebp - 0x550], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x550]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x430]
call fcn.0040b850
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x460]
call fcn.00404a50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x45c]
call fcn.00404a50
push 0x660c94
lea ecx, [ebp - 0x464]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x554], eax
mov edx, dword [ebp - 0x554]
mov dword [ebp - 0x558], edx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x558]
call fcn.00404a70
push eax
push 0x660c8c
lea eax, [ebp - 0x468]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x55c], eax
mov ecx, dword [ebp - 0x55c]
mov dword [ebp - 0x560], ecx
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x560]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x430]
call fcn.0040b850
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x468]
call fcn.00404a50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x464]
call fcn.00404a50
push 0x660c84
lea edx, [ebp - 0x46c]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x564], eax
mov eax, dword [ebp - 0x564]
mov dword [ebp - 0x568], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x568]
call fcn.00404a70
push eax
push 0x660c7c
lea ecx, [ebp - 0x470]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x56c], eax
mov edx, dword [ebp - 0x56c]
mov dword [ebp - 0x570], edx
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x570]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x430]
call fcn.0040b850
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x470]
call fcn.00404a50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x46c]
call fcn.00404a50
push 0x660c70
lea eax, [ebp - 0x474]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x574], eax
mov ecx, dword [ebp - 0x574]
mov dword [ebp - 0x578], ecx
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x578]
call fcn.00404a70
push eax
push 0x660c60
lea edx, [ebp - 0x478]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x57c]
mov dword [ebp - 0x580], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x580]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x430]
call fcn.0040b850
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x478]
call fcn.00404a50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x474]
call fcn.00404a50
push 0x104
push 0
lea ecx, [ebp - 0x42c]
push ecx
call fcn.0061b420
add esp, 0xc
lea ecx, [ebp - 0x430]
call fcn.0040c010
push eax
lea edx, [ebp - 0x42c]
push edx
call fcn.00441700
add esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x430]
call fcn.00404a50
push 0x660c58
lea eax, [ebp - 0x480]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x584], eax
mov ecx, dword [ebp - 0x584]
mov dword [ebp - 0x588], ecx
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x508]
or edx, 4
mov dword [ebp - 0x508], edx
mov ecx, dword [ebp - 0x588]
call fcn.00404a70
push eax
lea eax, [ebp - 0x42c]
push eax
call fcn.00444200
add esp, 8
test eax, eax
je 0x43bfb6
mov ecx, 0x6da338
call fcn.0045e660
push eax
mov ecx, 0x6da338
call fcn.0045e570
push eax
push 0x660c44
lea ecx, [ebp - 0x484]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x58c], eax
mov edx, dword [ebp - 0x58c]
mov dword [ebp - 0x590], edx
mov dword [ebp - 4], 0x12
mov eax, dword [ebp - 0x508]
or eax, 8
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x590]
call fcn.00404a70
push eax
call fcn.0044a480
add esp, 8
test eax, eax
jne 0x43bfb6
mov dword [ebp - 0x594], 1
jmp 0x43bfc0
mov dword [ebp - 0x594], 0
mov cl, byte [ebp - 0x594]
mov byte [ebp - 0x479], cl
mov dword [ebp - 4], 0x11
mov edx, dword [ebp - 0x508]
and edx, 8
je 0x43bff0
and dword [ebp - 0x508], 0xfffffff7
lea ecx, [ebp - 0x484]
call fcn.00404a50
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x508]
and eax, 4
je 0x43c014
and dword [ebp - 0x508], 0xfffffffb
lea ecx, [ebp - 0x480]
call fcn.00404a50
movzx ecx, byte [ebp - 0x479]
test ecx, ecx
je 0x43c2cd
lea edx, [ebp - 0x42c]
push edx
lea ecx, [ebp - 0x434]
call fcn.004088d0
mov byte [ebp - 4], 0x13
push 0x660c9c
lea eax, [ebp - 0x488]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x598], eax
mov ecx, dword [ebp - 0x598]
mov dword [ebp - 0x59c], ecx
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x59c]
call fcn.00404a70
push eax
push 0x660ca4
lea edx, [ebp - 0x48c]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x5a0]
mov dword [ebp - 0x5a4], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x5a4]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x434]
call fcn.0040b850
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x48c]
call fcn.00404a50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x488]
call fcn.00404a50
push 0x660c8c
lea ecx, [ebp - 0x490]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5a8], eax
mov edx, dword [ebp - 0x5a8]
mov dword [ebp - 0x5ac], edx
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x5ac]
call fcn.00404a70
push eax
push 0x660c94
lea eax, [ebp - 0x494]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5b0], eax
mov ecx, dword [ebp - 0x5b0]
mov dword [ebp - 0x5b4], ecx
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x5b4]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x434]
call fcn.0040b850
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x494]
call fcn.00404a50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x490]
call fcn.00404a50
push 0x660c7c
lea edx, [ebp - 0x498]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5b8], eax
mov eax, dword [ebp - 0x5b8]
mov dword [ebp - 0x5bc], eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x5bc]
call fcn.00404a70
push eax
push 0x660c84
lea ecx, [ebp - 0x49c]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5c0], eax
mov edx, dword [ebp - 0x5c0]
mov dword [ebp - 0x5c4], edx
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x5c4]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x434]
call fcn.0040b850
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x49c]
call fcn.00404a50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x498]
call fcn.00404a50
push 0x660c60
lea eax, [ebp - 0x4a0]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5c8], eax
mov ecx, dword [ebp - 0x5c8]
mov dword [ebp - 0x5cc], ecx
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x5cc]
call fcn.00404a70
push eax
push 0x660c70
lea edx, [ebp - 0x4a4]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x5d0]
mov dword [ebp - 0x5d4], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x5d4]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x434]
call fcn.0040b850
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x4a4]
call fcn.00404a50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x4a0]
call fcn.00404a50
push 0x104
push 0
lea ecx, [ebp - 0x42c]
push ecx
call fcn.0061b420
add esp, 0xc
lea ecx, [ebp - 0x434]
call fcn.0040c010
push eax
lea edx, [ebp - 0x42c]
push edx
call fcn.00441700
add esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x434]
call fcn.00404a50
push 0x64
push 0x660ef0
lea eax, [ebp - 0x4a8]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5d8], eax
mov ecx, dword [ebp - 0x5d8]
mov dword [ebp - 0x5dc], ecx
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x5dc]
push edx
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x12b8]
mov eax, dword [edx + 0x180]
call eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4a8]
call fcn.00404a50
mov ecx, dword [ebp - 0x50c]
fld dword [ecx + 0xbc]
fmul qword [0x660ee8]
fadd qword [0x65a550]
call fcn.0061b370
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x12b8]
mov edx, dword [eax + 0x18c]
call edx
push 0xbc638
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x12b8]
mov eax, dword [edx + 0x16c]
call eax
push 0
push 0
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x12b8]
mov edx, dword [eax + 0x168]
call edx
push 1
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x12b8]
mov eax, dword [edx + 0x198]
call eax
lea ecx, [ebp - 0x42c]
push ecx
mov ecx, dword [ebp - 0x50c]
add ecx, 0x12b8
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x12b8]
mov edx, dword [eax + 0x170]
call edx
mov dword [ebp - 0x224], 0xff
push 0xff
lea eax, [ebp - 0x214]
push eax
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.00444900
add esp, 0x10
push 0x660cac
lea eax, [ebp - 0x4b0]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5e0], eax
mov ecx, dword [ebp - 0x5e0]
mov dword [ebp - 0x5e4], ecx
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x508]
or edx, 0x10
mov dword [ebp - 0x508], edx
mov ecx, dword [ebp - 0x5e4]
call fcn.00404a70
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.00444200
add esp, 8
test eax, eax
je 0x43c4f3
mov ecx, 0x6da338
call fcn.0045e660
push eax
mov ecx, 0x6da338
call fcn.0045e570
push eax
push 0x65a5ac
lea ecx, [ebp - 0x4b4]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5e8], eax
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x5ec], edx
mov dword [ebp - 4], 0x1e
mov eax, dword [ebp - 0x508]
or eax, 0x20
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x5ec]
call fcn.00404a70
push eax
call fcn.0044a480
add esp, 8
test eax, eax
jne 0x43c4f3
mov dword [ebp - 0x5f0], 1
jmp 0x43c4fd
mov dword [ebp - 0x5f0], 0
mov cl, byte [ebp - 0x5f0]
mov byte [ebp - 0x4a9], cl
mov dword [ebp - 4], 0x1d
mov edx, dword [ebp - 0x508]
and edx, 0x20
je 0x43c52d
and dword [ebp - 0x508], 0xffffffdf
lea ecx, [ebp - 0x4b4]
call fcn.00404a50
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x508]
and eax, 0x10
je 0x43c551
and dword [ebp - 0x508], 0xffffffef
lea ecx, [ebp - 0x4b0]
call fcn.00404a50
movzx ecx, byte [ebp - 0x4a9]
test ecx, ecx
je 0x43c80a
lea edx, [ebp - 0x214]
push edx
lea ecx, [ebp - 0x438]
call fcn.004088d0
mov byte [ebp - 4], 0x1f
push 0x660ca4
lea eax, [ebp - 0x4b8]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5f4], eax
mov ecx, dword [ebp - 0x5f4]
mov dword [ebp - 0x5f8], ecx
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x5f8]
call fcn.00404a70
push eax
push 0x660c9c
lea edx, [ebp - 0x4bc]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x5fc], eax
mov eax, dword [ebp - 0x5fc]
mov dword [ebp - 0x600], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x600]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x438]
call fcn.0040b850
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x4bc]
call fcn.00404a50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x4b8]
call fcn.00404a50
push 0x660c94
lea ecx, [ebp - 0x4c0]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x604], eax
mov edx, dword [ebp - 0x604]
mov dword [ebp - 0x608], edx
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x608]
call fcn.00404a70
push eax
push 0x660c8c
lea eax, [ebp - 0x4c4]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x60c], eax
mov ecx, dword [ebp - 0x60c]
mov dword [ebp - 0x610], ecx
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x610]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x438]
call fcn.0040b850
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x4c4]
call fcn.00404a50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x4c0]
call fcn.00404a50
push 0x660c84
lea edx, [ebp - 0x4c8]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x614], eax
mov eax, dword [ebp - 0x614]
mov dword [ebp - 0x618], eax
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x618]
call fcn.00404a70
push eax
push 0x660c7c
lea ecx, [ebp - 0x4cc]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x61c], eax
mov edx, dword [ebp - 0x61c]
mov dword [ebp - 0x620], edx
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x620]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x438]
call fcn.0040b850
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x4cc]
call fcn.00404a50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x4c8]
call fcn.00404a50
push 0x660c70
lea eax, [ebp - 0x4d0]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x624]
mov dword [ebp - 0x628], ecx
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x628]
call fcn.00404a70
push eax
push 0x660c60
lea edx, [ebp - 0x4d4]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x62c], eax
mov eax, dword [ebp - 0x62c]
mov dword [ebp - 0x630], eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x630]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x438]
call fcn.0040b850
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x4d4]
call fcn.00404a50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x4d0]
call fcn.00404a50
push 0x104
push 0
lea ecx, [ebp - 0x214]
push ecx
call fcn.0061b420
add esp, 0xc
lea ecx, [ebp - 0x438]
call fcn.0040c010
push eax
lea edx, [ebp - 0x214]
push edx
call fcn.00441700
add esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x438]
call fcn.00404a50
push 0x660c58
lea eax, [ebp - 0x4dc]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x634], eax
mov ecx, dword [ebp - 0x634]
mov dword [ebp - 0x638], ecx
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x508]
or edx, 0x40
mov dword [ebp - 0x508], edx
mov ecx, dword [ebp - 0x638]
call fcn.00404a70
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.00444200
add esp, 8
test eax, eax
je 0x43c8da
mov ecx, 0x6da338
call fcn.0045e660
push eax
mov ecx, 0x6da338
call fcn.0045e570
push eax
push 0x660c44
lea ecx, [ebp - 0x4e0]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x63c], eax
mov edx, dword [ebp - 0x63c]
mov dword [ebp - 0x640], edx
mov dword [ebp - 4], 0x29
mov eax, dword [ebp - 0x508]
or eax, 0x80
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x640]
call fcn.00404a70
push eax
call fcn.0044a480
add esp, 8
test eax, eax
jne 0x43c8da
mov dword [ebp - 0x644], 1
jmp 0x43c8e4
mov dword [ebp - 0x644], 0
mov cl, byte [ebp - 0x644]
mov byte [ebp - 0x4d5], cl
mov dword [ebp - 4], 0x28
mov edx, dword [ebp - 0x508]
and edx, 0x80
je 0x43c91a
and dword [ebp - 0x508], 0xffffff7f
lea ecx, [ebp - 0x4e0]
call fcn.00404a50
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x508]
and eax, 0x40
je 0x43c93e
and dword [ebp - 0x508], 0xffffffbf
lea ecx, [ebp - 0x4dc]
call fcn.00404a50
movzx ecx, byte [ebp - 0x4d5]
test ecx, ecx
je 0x43cbf7
lea edx, [ebp - 0x214]
push edx
lea ecx, [ebp - 0x43c]
call fcn.004088d0
mov byte [ebp - 4], 0x2a
push 0x660c9c
lea eax, [ebp - 0x4e4]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x648]
mov dword [ebp - 0x64c], ecx
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x64c]
call fcn.00404a70
push eax
push 0x660ca4
lea edx, [ebp - 0x4e8]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x650]
mov dword [ebp - 0x654], eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x654]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040b850
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x4e8]
call fcn.00404a50
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4e4]
call fcn.00404a50
push 0x660c8c
lea ecx, [ebp - 0x4ec]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x658], eax
mov edx, dword [ebp - 0x658]
mov dword [ebp - 0x65c], edx
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x65c]
call fcn.00404a70
push eax
push 0x660c94
lea eax, [ebp - 0x4f0]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x660], eax
mov ecx, dword [ebp - 0x660]
mov dword [ebp - 0x664], ecx
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x664]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040b850
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x4f0]
call fcn.00404a50
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4ec]
call fcn.00404a50
push 0x660c7c
lea edx, [ebp - 0x4f4]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x668], eax
mov eax, dword [ebp - 0x668]
mov dword [ebp - 0x66c], eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x66c]
call fcn.00404a70
push eax
push 0x660c84
lea ecx, [ebp - 0x4f8]
push ecx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x670], eax
mov edx, dword [ebp - 0x670]
mov dword [ebp - 0x674], edx
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x674]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040b850
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x4f8]
call fcn.00404a50
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4f4]
call fcn.00404a50
push 0x660c60
lea eax, [ebp - 0x4fc]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x678], eax
mov ecx, dword [ebp - 0x678]
mov dword [ebp - 0x67c], ecx
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x67c]
call fcn.00404a70
push eax
push 0x660c70
lea edx, [ebp - 0x500]
push edx
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x680], eax
mov eax, dword [ebp - 0x680]
mov dword [ebp - 0x684], eax
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x684]
call fcn.00404a70
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040b850
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x500]
call fcn.00404a50
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4fc]
call fcn.00404a50
push 0x104
push 0
lea ecx, [ebp - 0x214]
push ecx
call fcn.0061b420
add esp, 0xc
lea ecx, [ebp - 0x43c]
call fcn.0040c010
push eax
lea edx, [ebp - 0x214]
push edx
call fcn.00441700
add esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x43c]
call fcn.00404a50
push 0x64
push 0x660ef0
lea eax, [ebp - 0x504]
push eax
call fcn.004255b0
add esp, 8
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x688]
mov dword [ebp - 0x68c], ecx
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x68c]
push edx
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x13dc]
mov eax, dword [edx + 0x180]
call eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x504]
call fcn.00404a50
mov ecx, dword [ebp - 0x50c]
fld dword [ecx + 0xbc]
fmul qword [0x660ee8]
fadd qword [0x65a550]
call fcn.0061b370
push eax
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x13dc]
mov edx, dword [eax + 0x18c]
call edx
push 0xbc638
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x13dc]
mov eax, dword [edx + 0x16c]
call eax
push 0
push 0
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x13dc]
mov edx, dword [eax + 0x168]
call edx
push 1
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov eax, dword [ebp - 0x50c]
mov edx, dword [eax + 0x13dc]
mov eax, dword [edx + 0x198]
call eax
lea ecx, [ebp - 0x214]
push ecx
mov ecx, dword [ebp - 0x50c]
add ecx, 0x13dc
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx + 0x13dc]
mov edx, dword [eax + 0x170]
call edx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x220]
call fcn.00404a50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x218]
call fcn.00404a50
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18