Function at 0x442da5
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a8d10
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5c0
push esi
push edi
mov dword [ebp - 0x5b0], ecx
mov eax, dword [0x13c1aac]
add eax, 0x6ec
mov dword [ebp - 0x258], eax
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dx, word [ecx + 0x4c]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cx, word [eax + 0x48]
cmp edx, ecx
jle 0x442e0b
mov edx, dword [ebp - 0x258]
mov eax, dword [ebp - 0x258]
mov cx, word [eax + 0x48]
mov word [edx + 0x4c], cx
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27aac], 0
je 0x442e47
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cx, word [eax + 0x48]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27aac]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27aac]
mov eax, dword [edx]
call dword [eax + 0x8c]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27aac], 0
je 0x442e83
mov edx, dword [ebp - 0x258]
xor eax, eax
mov ax, word [edx + 0x4c]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27aac]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27aac]
mov edx, dword [eax]
call dword [edx + 0x88]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27ab8], 0
je 0x442ebf
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dx, word [ecx + 0x48]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27ab8]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27ab8]
mov edx, dword [eax]
call dword [edx + 0x8c]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27ab8], 0
je 0x442efe
mov ecx, dword [ebp - 0x5b0]
xor edx, edx
mov dx, word [ecx + 0x26e60]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27ab8]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27ab8]
mov edx, dword [eax]
call dword [edx + 0x88]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cx, word [eax + 0x4c]
push ecx
push 0x5c1b28
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27914], 0
je 0x442f57
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27914]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27914]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27918], 0
je 0x442f8f
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27918]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27918]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27ab0], 0
je 0x442fcb
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dx, word [ecx + 0x4a]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27ab0]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27ab0]
mov edx, dword [eax]
call dword [edx + 0x8c]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27ab0], 0
je 0x443007
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dx, word [ecx + 0x4e]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27ab0]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27ab0]
mov edx, dword [eax]
call dword [edx + 0x88]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27abc], 0
je 0x443043
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dx, word [ecx + 0x4a]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27abc]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27abc]
mov edx, dword [eax]
call dword [edx + 0x8c]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27abc], 0
je 0x443082
mov ecx, dword [ebp - 0x5b0]
xor edx, edx
mov dx, word [ecx + 0x26e62]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27abc]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27abc]
mov edx, dword [eax]
call dword [edx + 0x88]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cx, word [eax + 0x4e]
push ecx
push 0x5c1b2c
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x2791c], 0
je 0x4430db
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x2791c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x2791c]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27920], 0
je 0x443113
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27920]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27920]
mov edx, dword [eax]
call dword [edx + 0x80]
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0xec], 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2876c]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xe8], 0
jmp 0x443165
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
cmp dword [ebp - 0xe8], 7
jge 0x443471
mov dword [ebp - 0x264], 0
jmp 0x44318d
mov eax, dword [ebp - 0x264]
add eax, 1
mov dword [ebp - 0x264], eax
cmp dword [ebp - 0x264], 9
jge 0x44346c
mov ecx, dword [ebp - 0xe8]
push ecx
mov edx, dword [ebp - 0x264]
push edx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14]
call dword [edx + 0xbc]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x268], 0
cmp dword [ebp - 0xf8], 0
je 0x4431ec
push 0x26
mov eax, dword [ebp - 0xf8]
mov ecx, dword [eax + 0x670]
push ecx
call fcn.00556f5b
add esp, 8
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0xf8], 0
je 0x4432cb
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x1001
je 0x44329e
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0xd67
je 0x44329e
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0xcfa
je 0x44329e
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x1ac
jl 0x443270
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x1af
jle 0x44329e
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x2a8
jl 0x4432cb
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x2ad
jg 0x4432cb
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
push eax
call fcn.00558d2e
add esp, 4
mov dword [ebp - 0x26c], eax
mov ecx, dword [ebp - 0x154]
add ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x154], ecx
cmp dword [ebp - 0xf8], 0
je 0x443378
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0xcfb
je 0x44334b
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x1b0
jl 0x44331d
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x1b3
jle 0x44334b
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x2ae
jl 0x443378
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x2b3
jg 0x443378
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
push eax
call fcn.00558d2e
add esp, 4
mov dword [ebp - 0x270], eax
mov ecx, dword [ebp - 0x150]
add ecx, dword [ebp - 0x270]
mov dword [ebp - 0x150], ecx
cmp dword [ebp - 0xf8], 0
je 0x4433c3
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x190
jl 0x4433c3
mov edx, dword [ebp - 0xf8]
mov eax, dword [edx + 0x670]
movsx ecx, word [eax]
cmp ecx, 0x194
jg 0x4433c3
mov edx, dword [ebp - 0x154]
add edx, 1
mov dword [ebp - 0x154], edx
jmp 0x443467
cmp dword [ebp - 0xf8], 0
je 0x44340b
mov eax, dword [ebp - 0xf8]
mov ecx, dword [eax + 0x670]
movsx edx, word [ecx]
cmp edx, 0x195
jl 0x44340b
mov eax, dword [ebp - 0xf8]
mov ecx, dword [eax + 0x670]
movsx edx, word [ecx]
cmp edx, 0x199
jg 0x44340b
mov eax, dword [ebp - 0x150]
add eax, 1
mov dword [ebp - 0x150], eax
jmp 0x443467
cmp dword [ebp - 0xf8], 0
je 0x443467
cmp dword [ebp - 0x268], 0xe6
jne 0x443467
mov ecx, dword [ebp - 0xf8]
mov edx, dword [ecx + 0x670]
push edx
call fcn.00558d2e
add esp, 4
mov dword [ebp - 0x274], eax
cmp dword [ebp - 0x274], 0
jne 0x443455
mov eax, dword [ebp - 0xec]
add eax, 1
mov dword [ebp - 0xec], eax
jmp 0x443467
mov ecx, dword [ebp - 0xec]
add ecx, dword [ebp - 0x274]
mov dword [ebp - 0xec], ecx
jmp 0x44317e
jmp 0x443156
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
movsx ecx, byte [eax + 0x750]
cmp ecx, 1
jne 0x4434f7
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27944], 0
je 0x4434bc
push 0
push 0x5c1b30
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27944]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27944]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27948], 0
je 0x4434f2
push 0
push 0x5c1b34
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27948]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27948]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x44359d
mov eax, dword [ebp - 0x154]
push eax
push 0x5c1b38
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27944], 0
je 0x44354a
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27944]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27944]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x150]
push eax
push 0x5c1b3c
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27948], 0
je 0x44359d
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27948]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27948]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0xec]
push eax
push 0x5c1b40
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x2794c], 0
je 0x4435f0
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x2794c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2794c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp + 8]
and eax, 0x10
test eax, eax
je 0x4435ff
jmp 0x4468bf
mov ecx, dword [ebp - 0x258]
mov edx, dword [ecx + 0x1c]
push edx
push 0x5c1b44
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27924], 0
je 0x443655
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27924]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27924]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x2792c], 0
je 0x44368d
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x2792c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x2792c]
mov eax, dword [edx]
call dword [eax + 0x80]
mov dword [ebp - 0x100], 0
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x4c]
call fcn.0050437e
mov dword [ebp - 0xe4], eax
mov edx, dword [ebp - 0x258]
movsx eax, word [edx + 0x40]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0xe4], 2
jne 0x4436e6
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
mov eax, dword [ecx*4 + 0x5cb5e8]
sub eax, dword [edx*4 + 0x5cb5e4]
xor edx, edx
mov ecx, 0xa
div ecx
mov dword [ebp - 0x100], eax
jmp 0x44370b
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx*4 + 0x5caf9c]
sub ecx, dword [eax*4 + 0x5caf98]
mov eax, ecx
xor edx, edx
mov ecx, 0xa
div ecx
mov dword [ebp - 0x100], eax
mov edx, dword [0x13c1aac]
fild dword [edx + 0xc50]
fmul dword [0x5ae0e4]
fidiv dword [ebp - 0x100]
call fcn.00599ab0
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
push eax
mov ecx, dword [0x13c1aac]
mov edx, dword [ecx + 0xc50]
push edx
push 0xa45450
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0x10
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27980], 0
je 0x4437e0
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27980]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27980]
mov edx, dword [eax]
call dword [edx + 0x80]
cmp dword [ebp - 0x100], 0x50
jl 0x4437be
push 0xffff0000
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27980]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27980]
mov edx, dword [eax]
call dword [edx + 0x84]
jmp 0x4437e0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27980]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27980]
mov edx, dword [eax]
call dword [edx + 0x84]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27aa8], 0
je 0x44383e
mov ecx, dword [0x13c1aac]
cmp dword [ecx + 0xc50], 0
jle 0x44381f
push 1
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27aa8]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27aa8]
mov eax, dword [edx]
call dword [eax + 0x60]
jmp 0x44383e
push 0
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27aa8]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27aa8]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x40]
add ecx, 1
push ecx
push 0x5c1b48
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27934], 0
je 0x443898
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27934]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27934]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a44], 0
je 0x4438d0
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a44]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a44]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
call fcn.0050437e
mov dword [ebp - 0xe4], eax
mov ecx, dword [ebp - 0x258]
movsx edx, word [ecx + 0x40]
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0xe4], 2
jne 0x44391b
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax*4 + 0x5cb5e8]
push ecx
push 0x5c1b4c
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
jmp 0x44393a
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax*4 + 0x5caf9c]
push ecx
push 0x5c1b50
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov al, byte [0x5d809c]
mov byte [ebp - 0x254], al
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x253]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27924]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27924]
mov eax, dword [edx]
call dword [eax + 0x88]
push eax
push str._s____s
lea ecx, [ebp - 0x254]
push ecx
call fcn.00599938
add esp, 0x10
push 0
lea edx, [ebp - 0x254]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27924]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27924]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27928], 0
je 0x4439f4
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27928]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27928]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27930], 0
je 0x443a2c
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27930]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27930]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x2e0]
push ecx
push 0x5c1b5c
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27938], 0
je 0x443a86
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27938]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27938]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
movsx edx, word [ecx + 0x2e2]
push edx
push 0x5c1b60
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x2793c], 0
je 0x443ae0
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2793c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2793c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x2e4]
push ecx
push 0x5c1b64
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27940], 0
je 0x443b3a
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27940]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27940]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
mov edx, dword [ecx + 0x18]
push edx
push 0x5c1b68
lea eax, [ebp - 0x148]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x278f8], 0
je 0x443ba3
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x278f8]
mov byte [eax + 0xcdd], 1
push 0
lea ecx, [ebp - 0x148]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x278f8]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x278f8]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x278fc], 0
je 0x443bee
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x278fc]
mov byte [eax + 0xcdd], 1
push 0
lea ecx, [ebp - 0x148]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x278fc]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x278fc]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [ecx + 0x18]
sub eax, dword [edx + 0x27690]
push eax
push 0x5c1b70
lea ecx, [ebp - 0x148]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27900], 0
je 0x443c63
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27900]
mov byte [ecx + 0xcdd], 1
push 0
lea edx, [ebp - 0x148]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27900]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27900]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
push eax
push 0x5c1b78
lea ecx, [ebp - 0x3fc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27904], 0
je 0x443cb6
push 1
lea eax, [ebp - 0x3fc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27904]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27904]
mov edx, dword [eax]
call dword [edx + 0x80]
mov dword [ebp - 0x414], 0xa3f8d0
mov dword [ebp - 0x410], 0xa3f950
mov dword [ebp - 0x40c], 0xa3f9d0
mov dword [ebp - 0x408], 0xa3fa50
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
xor edx, edx
mov dx, word [ecx + 0x11c]
push edx
push 0x5c1b80
lea eax, [ebp - 0x374]
push eax
call fcn.00599938
add esp, 0xc
push 0
lea ecx, [ebp - 0x374]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27908]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27908]
mov eax, dword [edx]
call dword [eax + 0x80]
push 0xffaaaaaa
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27908]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27908]
mov edx, dword [eax]
call dword [edx + 0x84]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x5c]
cmp ecx, 0x28
jge 0x443e4e
mov edx, dword [ebp - 0x258]
movsx eax, word [edx + 0x5c]
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 6
jge 0x443ddb
push 0
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x14]
mov ecx, dword [ebp + eax*4 - 0x414]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x2790c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x2790c]
mov eax, dword [edx]
call dword [eax + 0x80]
push 0
push 0x5c1b84
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27910]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27910]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x443e4c
push 0
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
mov edx, dword [ebp + ecx*4 - 0x414]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2790c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2790c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
mov eax, dword [ebp - 0x258]
movsx eax, word [eax + 0x5c]
cdq
mov ecx, 0xa
idiv ecx
mov edx, dword [ebp + eax*4 - 0x414]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27910]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27910]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x443e9c
push 0
push str.Monster
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2790c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2790c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0x5c1b90
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27910]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27910]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x50]
push ecx
push 0x5c1b94
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27950], 0
je 0x443ef3
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27950]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27950]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
movsx edx, word [ecx + 0x52]
push edx
push 0x5c1b98
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27954], 0
je 0x443f4a
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27954]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27954]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x54]
push ecx
push 0x5c1b9c
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27958], 0
je 0x443fa1
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27958]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27958]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
movsx edx, word [ecx + 0x56]
push edx
push 0x5c1ba0
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x2795c], 0
je 0x443ff8
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2795c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2795c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx eax, word [eax + 0x40]
add eax, 1
imul eax, eax, 3
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x404], eax
cmp dword [ebp - 0x404], 0xc8
jle 0x444029
mov dword [ebp - 0x404], 0xc8
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x4c]
call fcn.0050437e
cmp eax, 2
jne 0x444046
mov dword [ebp - 0x404], 0xc8
mov edx, dword [ebp - 0x404]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x400]
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x37c]
mov dword [ebp - 0x378], ecx
push 0x1f
call fcn.004368c5
add esp, 4
cmp eax, 1
jne 0x444083
mov dword [ebp - 0x378], 0xff
push 0x27
call fcn.004368c5
add esp, 4
cmp eax, 1
jne 0x44409c
mov dword [ebp - 0x37c], 0xff
push 0x2f
call fcn.004368c5
add esp, 4
cmp eax, 1
jne 0x4440b5
mov dword [ebp - 0x400], 0xff
mov edx, dword [ebp - 0x404]
push edx
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x58]
push ecx
push 0x5c1ba4
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0x10
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27960], 0
je 0x444114
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27960]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27960]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x378]
push ecx
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x59]
push eax
push 0x5c1bb0
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0x10
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27964], 0
je 0x444173
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27964]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27964]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x37c]
push eax
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x5a]
push edx
push 0x5c1bbc
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0x10
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27968], 0
je 0x4441d2
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27968]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27968]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x400]
push eax
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x5b]
push edx
push str._3d___3d
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0x10
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x2796c], 0
je 0x444231
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2796c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2796c]
mov edx, dword [eax]
call dword [edx + 0x80]
cmp dword [ebp - 0xe4], 2
jne 0x44426f
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax*4 + 0x5cb5e8]
sub edx, dword [ecx*4 + 0x5cb5e4]
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax + 0x1c]
sub edx, dword [ecx*4 + 0x5cb5e4]
mov dword [ebp - 0x260], edx
jmp 0x4442a2
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax*4 + 0x5caf9c]
sub edx, dword [ecx*4 + 0x5caf98]
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax + 0x1c]
sub edx, dword [ecx*4 + 0x5caf98]
mov dword [ebp - 0x260], edx
mov eax, dword [ebp - 0xe0]
shr eax, 2
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xf0], 4
mov ecx, dword [ebp - 0x260]
cmp ecx, dword [ebp - 0x5c]
jae 0x4442cf
mov dword [ebp - 0xf0], 1
jmp 0x444300
mov edx, dword [ebp - 0x5c]
shl edx, 1
cmp dword [ebp - 0x260], edx
jae 0x4442e8
mov dword [ebp - 0xf0], 2
jmp 0x444300
mov eax, dword [ebp - 0x5c]
imul eax, eax, 3
cmp dword [ebp - 0x260], eax
jae 0x444300
mov dword [ebp - 0xf0], 3
mov dword [ebp - 0x14c], 0
jmp 0x44431b
mov ecx, dword [ebp - 0x14c]
add ecx, 1
mov dword [ebp - 0x14c], ecx
cmp dword [ebp - 0x14c], 3
jge 0x444389
mov edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + edx*4 + 0x27984], 0
je 0x444387
mov ecx, dword [ebp - 0xf0]
sub ecx, 1
cmp dword [ebp - 0x14c], ecx
jge 0x44436a
mov edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x27984]
mov dword [ecx + 0xa4], 1
jmp 0x444387
mov edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x27984]
mov dword [ecx + 0xa4], 0
jmp 0x44430c
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0xf0]
sub eax, 1
imul eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x260]
sub ecx, eax
mov dword [ebp - 0x260], ecx
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0x5b8], edx
mov dword [ebp - 0x5b4], 0
fild qword [ebp - 0x5b8]
fmul qword [0x5ae368]
call fcn.00599ab0
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0x25c], 0
jmp 0x4443f5
mov eax, dword [ebp - 0x25c]
add eax, 1
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 0xa
jge 0x44453a
mov ecx, dword [ebp - 0x260]
cmp ecx, dword [ebp - 0xe0]
jbe 0x4444ab
mov edx, dword [ebp - 0x260]
sub edx, dword [ebp - 0xe0]
mov dword [ebp - 0x260], edx
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + eax*4 + 0x27990], 0
je 0x4444a6
mov edx, dword [ebp - 0xe0]
push edx
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x27990]
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x27990]
mov eax, dword [edx]
call dword [eax + 0x8c]
mov ecx, dword [ebp - 0xe0]
push ecx
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x27990]
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x27990]
mov eax, dword [edx]
call dword [eax + 0x88]
jmp 0x444535
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + ecx*4 + 0x27990], 0
je 0x444535
mov eax, dword [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x27990]
mov eax, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x27990]
mov edx, dword [eax]
call dword [edx + 0x8c]
mov eax, dword [ebp - 0x260]
push eax
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x27990]
mov eax, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x27990]
mov edx, dword [eax]
call dword [edx + 0x88]
mov dword [ebp - 0x260], 0
jmp 0x4443e6
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x5c]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0xfc], 0
cmp dword [ebp - 0x50], 0x28
jge 0x4445c9
cmp dword [ebp - 0x50], 0x20
jne 0x444569
mov dword [ebp - 0xfc], 2
jmp 0x4445ba
mov eax, dword [ebp - 0x50]
cdq
mov ecx, 0xa
idiv ecx
mov dword [ebp - 0x41c], edx
mov eax, dword [ebp - 0x50]
cdq
mov ecx, 0xa
idiv ecx
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x41c], 6
jl 0x4445ae
cmp dword [ebp - 0x41c], 9
jg 0x4445ae
mov edx, dword [ebp - 0x41c]
sub edx, 6
mov dword [ebp - 0xfc], edx
jmp 0x4445ba
mov eax, dword [ebp - 0x418]
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0x258]
mov dl, byte [ebp - 0xfc]
mov byte [ecx + 0x14], dl
mov eax, dword [ebp + 8]
and eax, 1
test eax, eax
jne 0x444b7f
mov dword [ebp - 0x420], 0
mov dword [ebp - 0x424], 0
mov dword [ebp - 0xf4], 0
jmp 0x444606
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
cmp dword [ebp - 0xf4], 0x18
jge 0x444862
mov edx, 1
mov ecx, dword [ebp - 0xf4]
shl edx, cl
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + eax*4 + 0x279b8], 0
je 0x44485d
mov edx, dword [ebp - 0x258]
mov eax, dword [edx + 0x2dc]
and eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x428]
jne 0x44482f
push 0
push 0
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x279b8]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x279b8]
mov edx, dword [eax]
call dword [edx + 0xb8]
mov dword [ebp - 0x42c], eax
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
imul ecx, ecx, 0x18
mov edx, dword [ebp - 0xf4]
lea eax, [ecx + edx + 0x1388]
mov dword [ebp - 0x420], eax
cmp dword [ebp - 0x42c], 0
je 0x44470f
mov ecx, dword [ebp - 0x42c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x42c]
call dword [edx + 0x98]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
movsx ecx, word [eax]
mov dword [ebp - 0x424], ecx
cmp dword [ebp - 0x424], 0
jle 0x44470f
mov edx, dword [ebp - 0x420]
cmp edx, dword [ebp - 0x424]
jne 0x44470f
mov dword [ebp - 0x42c], 0
jmp 0x4445f7
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x279b8]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x279b8]
mov eax, dword [edx]
call dword [eax + 0xc0]
push 8
call fcn.0059998a
add esp, 4
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
mov dword [ebp - 0x430], ecx
push 8
push 0
mov edx, dword [ebp - 0x430]
push edx
call fcn.005998e0
add esp, 0xc
mov eax, dword [ebp - 0x430]
mov cx, word [ebp - 0x420]
mov word [eax], cx
push 0x678
call fcn.0059998a
add esp, 4
mov dword [ebp - 0x590], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x590], 0
je 0x4447bf
push 0
push 0
mov edx, dword [ebp - 0x430]
push edx
push 0
mov ecx, dword [ebp - 0x590]
call fcn.0040c79e
mov dword [ebp - 0x5bc], eax
jmp 0x4447c9
mov dword [ebp - 0x5bc], 0
mov eax, dword [ebp - 0x5bc]
mov dword [ebp - 0x58c], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x58c]
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0
je 0x44482d
mov edx, dword [ebp - 0x434]
push edx
lea eax, [ebp - 0x598]
push eax
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x279b8]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x279b8]
mov edx, dword [eax]
call dword [edx + 0x98]
jmp 0x44485d
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x279b8]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x279b8]
mov eax, dword [edx]
call dword [eax + 0xc0]
jmp 0x4445f7
mov dword [ebp - 0xf4], 0
jmp 0x44487d
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
cmp dword [ebp - 0xf4], 8
jge 0x444b7f
mov ecx, dword [ebp - 0xf4]
add ecx, 0x18
mov edx, 1
shl edx, cl
mov dword [ebp - 0x43c], edx
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x28744], 0
je 0x444b7a
mov dword [ebp - 0x448], 0
mov dword [ebp - 0x444], 0
mov dword [ebp - 0x440], 0
mov ecx, dword [ebp - 0xf4]
add ecx, 0x13e8
mov dword [ebp - 0x420], ecx
mov eax, dword [ebp - 0xf4]
cdq
and edx, 3
add eax, edx
sar eax, 2
push eax
mov edx, dword [ebp - 0xf4]
and edx, reloc.WSOCK32.dll_closesocket
jns 0x444906
dec edx
or edx, 0xfffffffc
inc edx
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x28744]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x28744]
mov edx, dword [eax]
call dword [edx + 0xb8]
mov dword [ebp - 0x440], eax
cmp dword [ebp - 0x440], 0
je 0x444985
mov eax, dword [ebp - 0x440]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x440]
call dword [edx + 0x98]
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x44c]
movsx ecx, word [eax]
mov dword [ebp - 0x424], ecx
cmp dword [ebp - 0x424], 0
jle 0x444985
mov edx, dword [ebp - 0x420]
cmp edx, dword [ebp - 0x424]
jne 0x444985
mov dword [ebp - 0x440], 0
jmp 0x44486e
mov eax, dword [ebp - 0xf4]
cdq
and edx, 3
add eax, edx
sar eax, 2
push eax
mov eax, dword [ebp - 0xf4]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x4449a7
dec eax
or eax, 0xfffffffc
inc eax
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x28744]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x28744]
mov edx, dword [eax]
call dword [edx + 0xa8]
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x258]
mov ecx, dword [eax + 0x2dc]
and ecx, dword [ebp - 0x43c]
cmp ecx, dword [ebp - 0x43c]
jne 0x444ae6
push 8
call fcn.0059998a
add esp, 4
mov dword [ebp - 0x59c], eax
mov edx, dword [ebp - 0x59c]
mov dword [ebp - 0x450], edx
push 8
push 0
mov eax, dword [ebp - 0x450]
push eax
call fcn.005998e0
add esp, 0xc
mov ecx, dword [ebp - 0xf4]
add ecx, 0x13e8
mov edx, dword [ebp - 0x450]
mov word [edx], cx
push 0x678
call fcn.0059998a
add esp, 4
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x5a4], 0
je 0x444a73
push 0
push 0
mov eax, dword [ebp - 0x450]
push eax
push 0
mov ecx, dword [ebp - 0x5a4]
call fcn.0040c79e
mov dword [ebp - 0x5c0], eax
jmp 0x444a7d
mov dword [ebp - 0x5c0], 0
mov ecx, dword [ebp - 0x5c0]
mov dword [ebp - 0x5a0], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x454], edx
mov eax, dword [ebp - 0xf4]
cdq
and edx, 3
add eax, edx
sar eax, 2
push eax
mov eax, dword [ebp - 0xf4]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x444abe
dec eax
or eax, 0xfffffffc
inc eax
push eax
mov ecx, dword [ebp - 0x454]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x28744]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x28744]
mov eax, dword [edx]
call dword [eax + 0x8c]
mov ecx, dword [0x5d4b40]
cmp dword [ecx + 0x1e8], 0
je 0x444b19
mov edx, dword [0x5d4b40]
mov eax, dword [edx + 0x1e8]
cmp eax, dword [ebp - 0x444]
jne 0x444b19
mov ecx, dword [0x5d4b40]
mov dword [ecx + 0x1e8], 0
cmp dword [ebp - 0x448], 1
je 0x444b7a
cmp dword [ebp - 0x444], 0
je 0x444b7a
mov edx, dword [ebp - 0x444]
mov dword [ebp - 0x5ac], edx
mov eax, dword [ebp - 0x5ac]
mov dword [ebp - 0x5a8], eax
cmp dword [ebp - 0x5a8], 0
je 0x444b66
push 1
mov ecx, dword [ebp - 0x5a8]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x5a8]
call dword [edx]
mov dword [ebp - 0x5c4], eax
jmp 0x444b70
mov dword [ebp - 0x5c4], 0
mov dword [ebp - 0x444], 0
jmp 0x44486e
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a18], 0
je 0x444bc1
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
test edx, edx
jne 0x444bc1
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a18]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a18]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x444c65
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a18], 0
je 0x444c65
push 1
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a18]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a18]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
cmp ecx, 1
jne 0x444c19
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a18]
mov dword [eax + 0xa4], 0
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
cmp edx, 2
jne 0x444c3f
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a18]
mov dword [ecx + 0xa4], 1
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x14]
cmp eax, 3
jne 0x444c65
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27a18]
mov dword [edx + 0xa4], 2
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a1c], 0
je 0x444ca7
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
test edx, edx
jne 0x444ca7
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a1c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a1c]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x444d4b
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a1c], 0
je 0x444d4b
push 1
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a1c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a1c]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
cmp ecx, 1
jne 0x444cff
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a1c]
mov dword [eax + 0xa4], 0
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
cmp edx, 2
jne 0x444d25
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a1c]
mov dword [ecx + 0xa4], 1
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x14]
cmp eax, 3
jne 0x444d4b
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27a1c]
mov dword [edx + 0xa4], 2
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a20], 0
je 0x444d8d
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
test edx, edx
jne 0x444d8d
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a20]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a20]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x444e31
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a20], 0
je 0x444e31
push 1
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a20]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a20]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
cmp ecx, 1
jne 0x444de5
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a20]
mov dword [eax + 0xa4], 0
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
cmp edx, 2
jne 0x444e0b
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a20]
mov dword [ecx + 0xa4], 1
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x14]
cmp eax, 3
jne 0x444e31
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27a20]
mov dword [edx + 0xa4], 2
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a24], 0
je 0x444e73
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
test edx, edx
jne 0x444e73
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a24]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a24]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x444f17
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a24], 0
je 0x444f17
push 1
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a24]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a24]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
cmp ecx, 1
jne 0x444ecb
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a24]
mov dword [eax + 0xa4], 0
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x14]
cmp edx, 2
jne 0x444ef1
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a24]
mov dword [ecx + 0xa4], 1
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x14]
cmp eax, 3
jne 0x444f17
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27a24]
mov dword [edx + 0xa4], 2
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x14]
mov dword [ebp - 0x5c8], ecx
cmp dword [ebp - 0x5c8], 3
ja case.default.0x444f3b
mov edx, dword [ebp - 0x5c8]
jmp dword [edx*4 + 0x4468d1]
push 0
push 0xa43550
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27970]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27970]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa435d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27974]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27974]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43650
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27978]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27978]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa436d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2797c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2797c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f1d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a28]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a28]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f250
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a2c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a2c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f2d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a30]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x4454ab
push 0
push 0xa43750
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27970]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27970]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa437d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27974]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27974]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43850
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27978]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27978]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa438d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2797c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2797c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f350
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a28]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a28]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f3d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a2c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a2c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f450
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a30]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x4454ab
push 0
push 0xa43950
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27970]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27970]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa439d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27974]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27974]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43a50
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27978]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27978]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43ad0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2797c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2797c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f4d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a28]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a28]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f550
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a2c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a2c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f5d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a30]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x4454ab
push 0
push 0xa43b50
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27970]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27970]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43bd0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27974]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27974]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43c50
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27978]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27978]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43cd0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2797c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2797c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3fed0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a28]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a28]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3ff50
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a2c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a2c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3ffd0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a30]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x4454ab
push 0
push 0xa43550
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27970]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27970]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa435d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27974]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27974]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa43650
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27978]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27978]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa436d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x2797c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x2797c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f1d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a28]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a28]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f250
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a2c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a2c]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
push 0xa3f2d0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a30]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a30]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x58]
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x258]
movsx eax, word [edx + 0x44]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x58], 0x64
jle 0x4454d3
mov dword [ebp - 0x58], 0x64
mov ecx, dword [ebp - 0x10]
push ecx
push 0x5c1bd4
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a4c], 0
je 0x445523
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a4c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a4c]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a50], 0
je 0x44555b
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a50]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a50]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a70]
mov dword [ebp - 0x108], ecx
mov edx, dword [0x13c1aac]
movsx eax, byte [edx + 0xef5]
mov ecx, dword [0x13c1aac]
mov dl, byte [ecx + eax + 0xef6]
mov byte [ebp - 0x4c], dl
movsx eax, byte [ebp - 0x4c]
test eax, eax
jl 0x4458bf
movsx ecx, byte [ebp - 0x4c]
cmp ecx, 0x68
jge 0x4458bf
mov ecx, dword [ebp - 0x5b0]
call fcn.00442d9a
mov edx, dword [0x13c1aac]
movsx eax, word [edx + 0x778]
mov dword [ebp - 0x458], eax
mov ecx, dword [0x5d804c]
mov dword [ebp - 0x460], ecx
cmp dword [0x5d804c], 3
jne 0x4455e0
mov dword [ebp - 0x460], 2
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
fld dword [eax + 0x28]
call fcn.00599ab0
sar eax, 7
cmp eax, 0x1a
jle 0x445650
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
fld dword [edx + 0x28]
call fcn.00599ab0
sar eax, 7
cmp eax, 0x1f
jge 0x445650
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
fld dword [ecx + 0x2c]
call fcn.00599ab0
sar eax, 7
cmp eax, 0x14
jle 0x445650
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
fld dword [eax + 0x2c]
call fcn.00599ab0
sar eax, 7
cmp eax, 0x19
jge 0x445650
mov dword [ebp - 0x5cc], 1
jmp 0x44565a
mov dword [ebp - 0x5cc], 0
xor ecx, ecx
cmp dword [ebp - 0x5cc], 1
sete cl
test ecx, ecx
je 0x445674
mov dword [ebp - 0x460], 2
mov edx, dword [0x13c1aac]
movsx eax, byte [edx + 0xef4]
shl eax, 7
mov ecx, dword [0x13c1aac]
movsx edx, word [ecx + eax + 0xc4]
push edx
mov ecx, dword [ebp - 0x5b0]
call fcn.00442bb8
push eax
mov eax, dword [ebp - 0x460]
push eax
mov ecx, dword [ebp - 0x258]
push ecx
movsx edx, byte [ebp - 0x4c]
push edx
call fcn.005622af
add esp, 0x14
mov dword [ebp - 0x45c], eax
cmp dword [ebp - 0x45c], 0
jl 0x4457c5
mov eax, dword [ebp - 0x45c]
push eax
push 0x5c1bd8
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27a70], 0
je 0x445720
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a70]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a70]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a54], 0
je 0x445758
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a54]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a54]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a70], 0
je 0x44578c
push 0xffbbbbff
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a70]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a70]
mov eax, dword [edx]
call dword [eax + 0x84]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a54], 0
je 0x4457c0
push 0xffbbbbff
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a54]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a54]
mov eax, dword [edx]
call dword [eax + 0x84]
jmp 0x4458ba
mov ecx, dword [ebp - 0x45c]
neg ecx
push ecx
push 0x5c1bdc
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a70], 0
je 0x44581a
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a70]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a70]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a54], 0
je 0x445852
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a54]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a54]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a70], 0
je 0x445886
push 0xffaaffaa
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a70]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a70]
mov edx, dword [eax]
call dword [edx + 0x84]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a54], 0
je 0x4458ba
push 0xffaaffaa
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a54]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a54]
mov edx, dword [eax]
call dword [edx + 0x84]
jmp 0x445945
push 0
push 0x5c1be0
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a70], 0
je 0x44590d
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a70]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a70]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a54], 0
je 0x445945
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a54]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a54]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
movsx eax, byte [edx + 0x1fa]
test eax, eax
jne 0x445974
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x26e5c]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
call fcn.004ff69c
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
fld dword [edx + 0x1d4]
call fcn.00599ab0
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
push eax
push 0x5c1be4
lea ecx, [ebp - 0xdc]
push ecx
call fcn.00599938
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x27a58], 0
je 0x4459db
push 0
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a58]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a58]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0x42]
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x54]
push edx
push 0x5c1be8
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a5c], 0
je 0x445a38
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a5c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a5c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a60], 0
je 0x445a70
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a64]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a64]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
movsx esi, word [ecx + 0x26]
push 3
mov edx, dword [ebp - 0x258]
push edx
call fcn.00558ff0
add esp, 8
add esi, eax
push 0x35
mov eax, dword [ebp - 0x258]
push eax
call fcn.00558ff0
add esp, 8
add esi, eax
mov dword [ebp - 0x20], esi
mov ecx, dword [ebp - 0x20]
push ecx
push 0x5c1bec
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a60], 0
je 0x445af3
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a60]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a60]
mov eax, dword [edx]
call dword [eax + 0x80]
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
cmp dword [edx + 0x200], 0x1a
jne 0x445b4b
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
xor edx, edx
mov dx, word [ecx + 0x166]
test edx, edx
jne 0x445b4b
mov dword [ebp - 0x1c], 0xa
mov eax, dword [ebp - 0x258]
mov ecx, dword [eax + 0x2dc]
and ecx, 0x20000
test ecx, ecx
je 0x445b46
mov dword [ebp - 0x1c], 0x14
jmp 0x445bed
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
cmp dword [eax + 0x200], 0x1a
jne 0x445b7d
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
xor eax, eax
mov ax, word [edx + 0x166]
cmp eax, 1
jne 0x445b7d
mov dword [ebp - 0x1c], 0
jmp 0x445bed
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
cmp dword [edx + 0x200], 0x21
jne 0x445bb9
mov dword [ebp - 0x1c], 0x14
mov eax, dword [ebp - 0x258]
mov ecx, dword [eax + 0x2dc]
and ecx, 0x200000
cmp ecx, 0x200000
jne 0x445bb7
mov dword [ebp - 0x1c], 0x28
jmp 0x445bed
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
cmp dword [eax + 0x200], 0x28
jne 0x445bd4
mov dword [ebp - 0x1c], 0x14
jmp 0x445bed
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
cmp dword [edx + 0x200], 0x3f
jne 0x445bed
mov dword [ebp - 0x1c], 0x1e
push 0x1a
mov eax, dword [ebp - 0x258]
push eax
call fcn.00558ff0
add esp, 8
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx + eax + 0x64]
mov edx, dword [ebp - 0x258]
movsx eax, word [edx + 0x54]
cdq
mov esi, 5
idiv esi
add ecx, eax
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x4c]
movsx esi, byte [edx + 0x74b]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x4c]
movsx eax, byte [edx + 0x74c]
sub esi, eax
mov edx, dword [ebp - 0x258]
xor eax, eax
mov al, byte [edx + 0x5a]
cdq
mov edi, 0xa
idiv edi
add eax, 0xa
imul esi, eax
add ecx, esi
mov dword [ebp - 0x104], ecx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
movsx edx, byte [ecx + 0x747]
cmp edx, 1
jne 0x445c80
mov eax, dword [ebp - 0x104]
sub eax, 0x1e
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0x104]
push ecx
push 0x5c1bf0
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a68], 0
je 0x445cd3
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a68]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a68]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x2e6]
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x44]
shl eax, 2
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cdq
mov ecx, 0xa
idiv ecx
push edx
mov eax, dword [ebp - 0x44]
cdq
mov ecx, 0xa
idiv ecx
push eax
push str._d._d__
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0x10
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a6c], 0
je 0x445d51
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a6c]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a6c]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x2f2]
push edx
push 0x5c1c00
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a74], 0
je 0x445dac
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a74]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a74]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x2f3]
push ecx
push 0x5c1c04
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a78], 0
je 0x445e07
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a78]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a78]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x258]
xor edx, edx
mov dl, byte [ecx + 0x2f0]
push edx
push 0x5c1c08
lea eax, [ebp - 0xdc]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + 0x27a7c], 0
je 0x445e62
push 0
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27a7c]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a7c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x258]
xor ecx, ecx
mov cl, byte [eax + 0x2f1]
push ecx
push 0x5c1c0c
lea edx, [ebp - 0xdc]
push edx
call fcn.00599938
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a80], 0
je 0x445ebd
push 0
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a80]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a80]
mov eax, dword [edx]
call dword [eax + 0x80]
mov dword [ebp - 0xf4], 0
jmp 0x445ed8
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
cmp dword [ebp - 0xf4], 0x10
jge 0x445faf
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
xor edx, edx
mov dx, word [eax + ecx*2 + 0x64c]
sar edx, 8
mov dword [ebp - 0x464], edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + eax*4 + 0x28690], 0
je 0x445faa
cmp dword [ebp - 0x464], 0
jl 0x445f75
cmp dword [ebp - 0x464], 0x28
jge 0x445f75
push 0
mov edx, dword [ebp - 0x464]
imul edx, edx, 0x18
add edx, 0x5caa20
push edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x28690]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x28690]
mov eax, dword [edx]
call dword [eax + 0x80]
jmp 0x445faa
push 0
push 0x5c1c10
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28690]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28690]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x445ec9
mov dword [ebp - 0xf4], 0
jmp 0x445fca
mov eax, dword [ebp - 0xf4]
add eax, 1
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0x10
jge 0x446545
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
mov eax, dword [ebp - 0xf4]
xor ecx, ecx
mov cl, byte [edx + eax*8 + 0x66c]
test ecx, ecx
jle 0x44642e
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
cmp dword [eax + ecx*8 + 0x670], 0xf4240
jge 0x446040
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [eax + ecx*8 + 0x670]
push edx
push 0x5c1c14
lea eax, [ebp - 0x40]
push eax
call fcn.00599938
add esp, 0xc
jmp 0x446184
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
mov eax, dword [ebp - 0xf4]
mov eax, dword [edx + eax*8 + 0x670]
cdq
mov ecx, 0xf4240
idiv ecx
mov dword [ebp - 0x478], eax
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
mov eax, dword [eax + ecx*8 + 0x670]
cdq
mov ecx, 0xf4240
idiv ecx
mov eax, edx
cdq
mov ecx, 0x2710
idiv ecx
mov dword [ebp - 0x468], eax
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
mov eax, dword [eax + ecx*8 + 0x670]
cdq
mov ecx, 0x2710
idiv ecx
mov dword [ebp - 0x46c], edx
mov dword [ebp - 0x474], 0x16d
mov edx, dword [ebp - 0x468]
and edx, reloc.WSOCK32.dll_closesocket
jns 0x4460d3
dec edx
or edx, 0xfffffffc
inc edx
test edx, edx
jne 0x4460e1
mov dword [ebp - 0x474], 0x16e
mov dword [ebp - 0x470], 0
cmp dword [ebp - 0x478], 4
jne 0x446100
mov dword [ebp - 0x470], 7
jmp 0x446128
cmp dword [ebp - 0x478], 5
jne 0x446115
mov dword [ebp - 0x470], 0xf
jmp 0x446128
cmp dword [ebp - 0x478], 6
jne 0x446128
mov dword [ebp - 0x470], 0x1e
cmp dword [ebp - 0x478], 0
je 0x446184
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27684]
sub ecx, dword [ebp - 0x468]
imul ecx, dword [ebp - 0x474]
mov edx, dword [ebp - 0x470]
sub edx, ecx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27688]
sub ecx, dword [ebp - 0x46c]
sub edx, ecx
mov dword [ebp - 0x47c], edx
mov edx, dword [ebp - 0x47c]
push edx
push 0xa44dd0
lea eax, [ebp - 0x40]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + ecx*4 + 0x28690], 0
je 0x446315
push 0
lea eax, [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28650]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28650]
mov edx, dword [eax]
call dword [edx + 0x80]
cmp dword [ebp - 0xf4], 0
jne 0x4462bb
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
mov edx, dword [ebp - 0xf4]
mov ax, word [ecx + edx*8 + 0x670]
mov word [ebp - 0x480], ax
movsx ecx, word [ebp - 0x480]
cmp ecx, 0x1ccf
jl 0x44623e
push 0xffffffffffffffff
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x28650]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x28650]
mov eax, dword [edx]
call dword [eax + 0x84]
jmp 0x4462bb
mov dword [ebp - 0x484], 0
jmp 0x446259
mov ecx, dword [ebp - 0x484]
add ecx, 1
mov dword [ebp - 0x484], ecx
cmp dword [ebp - 0x484], 7
jge 0x4462bb
movsx edx, word [ebp - 0x480]
mov eax, dword [ebp - 0x484]
movsx ecx, word [eax*2 + 0x5bed14]
cmp edx, ecx
jge 0x4462b9
mov edx, dword [ebp - 0x484]
mov eax, dword [edx*4 + 0x5becf8]
push eax
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28650]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28650]
mov edx, dword [eax]
call dword [edx + 0x84]
jmp 0x4462bb
jmp 0x44624a
push 1
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x28650]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x28650]
mov eax, dword [edx]
call dword [eax + 0x60]
push 1
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28690]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28690]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + eax*4 + 0x28690], 0
je 0x446385
push 0
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x28650]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x28650]
mov eax, dword [edx]
call dword [eax + 0x60]
push 0
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28690]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28690]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x2882c], 0
je 0x446429
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
mov eax, dword [ebp - 0xf4]
xor ecx, ecx
mov cl, byte [edx + eax*8 + 0x66c]
cmp ecx, 0x28
jl 0x4463d4
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x286d0]
mov dword [ecx + 0xa4], 0
jmp 0x44640c
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [ebp - 0xf4]
xor edx, edx
mov dl, byte [eax + ecx*8 + 0x66c]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov eax, dword [ecx + eax*4 + 0x286d0]
mov ecx, dword [edx*4 + 0x5c1770]
mov dword [eax + 0xa4], ecx
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + edx*4 + 0x286d0]
mov dword [ecx + 0x1ac], 0x1d
jmp 0x446540
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + edx*4 + 0x28690], 0
je 0x4464d7
push 0
push 0x5d80a0
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28650]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28650]
mov edx, dword [eax]
call dword [edx + 0x80]
push 0
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x28650]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x28650]
mov eax, dword [edx]
call dword [eax + 0x60]
push 0
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + ecx*4 + 0x28690]
mov eax, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + eax*4 + 0x28690]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
cmp dword [ecx + eax*4 + 0x286d0], 0
je 0x446540
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x2882c], 0
je 0x446540
push 0
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + eax*4 + 0x286d0]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + edx*4 + 0x286d0]
mov eax, dword [edx]
call dword [eax + 0x60]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x5b0]
mov dword [edx + ecx*4 + 0x29054], 0
jmp 0x445fbb
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a84], 0
je 0x4465e4
mov ecx, dword [0x13c1aac]
mov edx, dword [ecx + 0xc58]
push edx
push 0x5c1c18
lea eax, [ebp - 0x40]
push eax
call fcn.00599938
add esp, 0xc
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27a84]
mov byte [edx + 0xcdd], 1
push 0
lea eax, [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x27a84]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27a84]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 0x5b0]
cmp dword [eax + 0x27a88], 0
je 0x4465e4
push 0
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x27a88]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x27a88]
mov eax, dword [edx]
call dword [eax + 0x80]
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
cmp dword [edx + 0x778], 0
je 0x4467bf
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
mov edx, dword [ecx + 0x778]
xor eax, eax
mov ax, word [edx + 0x24a]
cmp eax, 0x13
je 0x44679e
push 0x100
push 0
lea ecx, [ebp - 0x584]
push ecx
call fcn.005998e0
add esp, 0xc
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
mov ecx, dword [eax + 0x778]
xor edx, edx
mov dx, word [ecx + 0x24a]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27c98]
mov dword [ecx + 0xa4], edx
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27c98]
mov ecx, dword [eax + 0xa4]
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x4c]
call fcn.005304e9
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x27c98]
mov dword [edx + 0xa4], eax
push 0
mov eax, dword [ebp - 0x258]
movsx ecx, word [eax + 0xd4]
imul ecx, ecx, 0x8c
add ecx, 0xd4e228
push ecx
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 0x287d8]
mov eax, dword [ebp - 0x5b0]
mov edx, dword [eax + 0x287d8]
mov eax, dword [edx]
call dword [eax + 0x80]
push 3
mov ecx, dword [ebp - 0x258]
add ecx, 0xd4
push ecx
call fcn.00556f5b
add esp, 8
push eax
push 0xa3e450
push 0x5c1c20
lea edx, [ebp - 0x584]
push edx
call fcn.00599938
add esp, 0x10
push 0
lea eax, [ebp - 0x584]
push eax
mov ecx, dword [ebp - 0x5b0]
mov ecx, dword [ecx + 0x287dc]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x287dc]
mov edx, dword [eax]
call dword [edx + 0x80]
push 4
mov eax, dword [ebp - 0x258]
add eax, 0xd4
push eax
call fcn.00556f5b
add esp, 8
push eax
push 0xa3e4d0
push 0x5c1c28
lea ecx, [ebp - 0x584]
push ecx
call fcn.00599938
add esp, 0x10
push 0
lea edx, [ebp - 0x584]
push edx
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x287e0]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x287e0]
mov edx, dword [eax]
call dword [edx + 0x80]
push 1
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27c98]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27c98]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x4467bd
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27c98]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27c98]
mov edx, dword [eax]
call dword [edx + 0x60]
jmp 0x4467de
push 0
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x27c98]
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x27c98]
mov edx, dword [eax]
call dword [edx + 0x60]
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
movsx edx, byte [ecx + 0x76a]
cmp edx, 1
jne 0x446892
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
cmp dword [ecx + 0x76c], 0x1f
je 0x446856
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x4c]
cmp dword [eax + 0x76c], 0x28
je 0x446856
mov ecx, dword [ebp - 0x5b0]
mov edx, dword [ecx + 0x4c]
cmp dword [edx + 0x76c], 0x14
jne 0x446844
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
xor edx, edx
mov dx, word [ecx + 0x126]
cmp edx, 7
jne 0x446856
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x4c]
cmp dword [ecx + 0x76c], 0x27
jne 0x446892
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x28828], 0
je 0x446890
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x28828]
mov dword [ecx + 0x2c], 1
mov edx, dword [ebp - 0x5b0]
mov eax, dword [edx + 0x28828]
mov ecx, dword [0x5bed48]
mov dword [eax + 0x1e8], ecx
jmp 0x4468b4
mov edx, dword [ebp - 0x5b0]
cmp dword [edx + 0x28828], 0
je 0x4468b4
mov eax, dword [ebp - 0x5b0]
mov ecx, dword [eax + 0x28828]
mov dword [ecx + 0x2c], 0
mov ecx, dword [ebp - 0x5b0]
call fcn.0044c3be
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4