Function at 0x45ee40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b7f4b
mov eax, dword fs:[0]
push eax
sub esp, 0x428
mov eax, dword [0x4d7bf4]
xor eax, ebp
mov dword [ebp - 0x4c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x414], ecx
mov eax, dword [ebp - 0x414]
cmp dword [eax], 0
jne 0x45ee83
xor al, al
jmp 0x461275
mov dword [ebp - 0x10], 0
push 0
mov ecx, dword [ebp - 0x414]
add ecx, 0x100
call fcn.0045c620
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x45efa7
push 0
mov ecx, dword [ebp - 0x414]
add ecx, 0x100
call fcn.0045c550
mov ecx, dword [ebp - 0x10]
cmp dword [ecx + 0x44], 0
je 0x45eeed
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x44]
add ecx, 0x34
call fcn.0047d260
movzx eax, al
test eax, eax
je 0x45eeed
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x44]
add ecx, 0x34
call fcn.0047d280
mov dword [ebp - 0x14], 0
jmp 0x45eeff
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x414]
add ecx, 0xb8
call fcn.004156c0
cmp dword [ebp - 0x14], eax
jge 0x45ef48
mov ecx, dword [ebp - 0x14]
push ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xb8
call fcn.0045c650
mov dword [ebp - 0x418], eax
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x418]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x418]
mov eax, dword [edx]
call eax
jmp 0x45eef6
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x3fc], ecx
mov edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3f8], 0
je 0x45ef98
mov ecx, dword [ebp - 0x3f8]
call fcn.0045c870
mov eax, 1
and eax, 1
je 0x45ef8a
mov ecx, dword [ebp - 0x3f8]
push ecx
call fcn.0049d76b
add esp, 4
mov edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x41c], edx
jmp 0x45efa2
mov dword [ebp - 0x41c], 0
jmp 0x45ee8a
mov dword [ebp - 0x18], 0
jmp 0x45efb9
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x414]
add ecx, 0xdc
call fcn.004156c0
cmp dword [ebp - 0x18], eax
jge 0x45f02c
mov byte [ebp - 0x1d], 0
mov ecx, dword [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xdc
call fcn.0045c650
mov dword [ebp - 0x420], eax
lea edx, [ebp - 0x1d]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x420]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x420]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x1c], eax
movzx ecx, byte [ebp - 0x1d]
test ecx, ecx
je 0x45f02a
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x1c]
mov dword [edx], eax
mov al, 1
jmp 0x461275
jmp 0x45efb0
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x424], ecx
cmp dword [ebp - 0x424], 0x111
ja 0x45f084
cmp dword [ebp - 0x424], 0x111
je 0x4610c6
mov edx, dword [ebp - 0x424]
sub edx, 5
mov dword [ebp - 0x424], edx
cmp dword [ebp - 0x424], 0xfd
ja case.default.0x45f116
mov eax, dword [ebp - 0x424]
movzx ecx, byte [eax + 0x4612c0]
jmp dword [ecx*4 + 0x461290]
cmp dword [ebp - 0x424], 0x200
ja 0x45f0d5
cmp dword [ebp - 0x424], 0x200
je 0x4601b6
cmp dword [ebp - 0x424], 0x113
je 0x45fd47
cmp dword [ebp - 0x424], 0x133
je 0x461104
cmp dword [ebp - 0x424], 0x138
je 0x461104
jmp case.default.0x45f116
cmp dword [ebp - 0x424], 0x20a
ja 0x45f11d
cmp dword [ebp - 0x424], 0x20a
je 0x460b5d
mov edx, dword [ebp - 0x424]
sub edx, 0x201
mov dword [ebp - 0x424], edx
cmp dword [ebp - 0x424], 3
ja case.default.0x45f116
mov eax, dword [ebp - 0x424]
jmp dword [eax*4 + 0x4613c0]
cmp dword [ebp - 0x424], 0x318
ja 0x45f15e
cmp dword [ebp - 0x424], 0x318
je 0x45facd
cmp dword [ebp - 0x424], 0x2a1
je 0x45fe77
cmp dword [ebp - 0x424], 0x2a3
je 0x46014e
jmp case.default.0x45f116
cmp dword [ebp - 0x424], 0x8001
je 0x45f16f
jmp case.default.0x45f116
mov dword [ebp - 0x24], 0
jmp 0x45f181
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xf4
call fcn.004156c0
cmp dword [ebp - 0x24], eax
jge 0x45f1ef
mov edx, dword [ebp - 0x24]
push edx
mov ecx, dword [ebp - 0x414]
add ecx, 0xf4
call fcn.0045c650
mov dword [ebp - 0x404], eax
mov eax, dword [ebp - 0x404]
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
je 0x45f1e3
push 1
mov ecx, dword [ebp - 0x400]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x400]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x428], eax
jmp 0x45f1ed
mov dword [ebp - 0x428], 0
jmp 0x45f178
mov ecx, dword [ebp - 0x414]
add ecx, 0xf4
call fcn.0045c370
jmp case.default.0x45f116
mov dword [ebp - 0x48], 0
xor ecx, ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x64]
mov ecx, dword [edx + 0x68]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
call dword [0x4bc14c]
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x58], 0
je 0x45f27f
mov dword [ebp - 0x48], 0xa
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov dword [ebp - 0x44], ecx
lea edx, [ebp - 0x48]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x58]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x5c], 0
je 0x45f2be
mov dword [ebp - 0x48], 0xe
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x5c]
mov dword [ebp - 0x44], eax
lea ecx, [ebp - 0x48]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x5c]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
push 0
mov ecx, dword [ebp - 0x414]
call fcn.00461a20
push 4
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc3a0]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x45f2ef
mov eax, dword [ebp - 0x28]
push eax
call dword [0x4bc454]
jmp case.default.0x45f116
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 1
mov al, 1
jmp 0x461275
mov dword [ebp - 0x9c], 0
xor edx, edx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], edx
push 0
lea eax, [ebp - 0x9c]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc35c]
test eax, eax
jne 0x45f345
mov al, 1
jmp 0x461275
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x50], 0
jne 0x45f3a1
mov dword [ebp - 0xdc], 0
push 0x3c
push 0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.004a0650
add esp, 0xc
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
push ecx
call dword [0x4bc360]
lea edx, [ebp - 0xdc]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
push ecx
call dword [0x4bc368]
mov al, 1
jmp 0x461275
mov edx, dword [ebp - 0x414]
movzx eax, byte [edx + 0xb1]
test eax, eax
je 0x45f5d3
mov ecx, dword [ebp - 0x414]
mov byte [ecx + 0xb1], 0
mov dword [ebp - 0xec], 0
xor edx, edx
mov dword [ebp - 0xe8], edx
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], edx
lea eax, [ebp - 0xec]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc404]
lea eax, [ebp - 0xec]
push eax
call dword [0x4bc36c]
test eax, eax
jne 0x45f5d3
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x50]
call fcn.0046e0e0
movzx edx, al
test edx, edx
je 0x45f511
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0xec]
mov dword [eax], ecx
mov edx, dword [ebp - 0xe8]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0xe4]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0xe0]
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x50]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x50]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0x34]
call eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 8], 0
je 0x45f484
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 8]
push eax
call dword [0x4bc0d8]
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0xc], 0
je 0x45f4a0
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0xc]
push eax
call dword [0x4bc0d8]
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x10], 0
je 0x45f4bc
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x10]
push eax
call dword [0x4bc0b0]
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x14], 0
je 0x45f4d8
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x14]
push eax
call dword [0x4bc0b0]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 8], 0
mov edx, dword [ebp - 0x414]
mov dword [edx + 0xc], 0
mov eax, dword [ebp - 0x414]
mov dword [eax + 0x10], 0
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x14], 0
jmp 0x45f595
mov dword [ebp - 0xf0], 0
push reloc.WS2_32.dll_accept
push 0
push 0x463450
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x50]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x50]
mov edx, dword [eax]
mov eax, dword [edx + 0xec]
call eax
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
je 0x45f595
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0xf0]
mov eax, dword [edx + 0x30]
call eax
sub esp, 0x10
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0xf0]
mov eax, dword [edx + 0x34]
call eax
jmp 0x45f51b
mov ecx, dword [ebp - 0x414]
movzx edx, byte [ecx + 0xb0]
test edx, edx
je 0x45f5d3
mov eax, dword [ebp - 0x414]
mov byte [eax + 0xb0], 0
push 0
push 0
push 0
push 0x4c3d24
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x50]
push edx
mov ecx, dword [ebp - 0x414]
call fcn.004623b0
mov eax, dword [ebp - 0x414]
movzx ecx, byte [eax + 0xb2]
test ecx, ecx
je 0x45f5f1
push 1
mov ecx, dword [ebp - 0x414]
call fcn.004620a0
mov edx, dword [ebp - 0x414]
movzx eax, byte [edx + 0xb3]
test eax, eax
je 0x45f696
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x10], 0
jne 0x45f696
mov dword [ebp - 0x100], 0
xor edx, edx
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0xf8], edx
mov dword [ebp - 0xf4], edx
lea eax, [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc404]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 4]
push ecx
call dword [0x4bc0c0]
mov edx, dword [ebp - 0x414]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0xf4]
sub eax, dword [ebp - 0xfc]
push eax
mov ecx, dword [ebp - 0xf8]
sub ecx, dword [ebp - 0x100]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 4]
push eax
call dword [0x4bc0bc]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x10], eax
mov dword [ebp - 0x8c], 0
push 0x3c
push 0
lea edx, [ebp - 0x88]
push edx
call fcn.004a0650
add esp, 0xc
lea eax, [ebp - 0x8c]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc360]
mov eax, dword [ebp - 0x414]
movzx ecx, byte [eax + 0xb3]
test ecx, ecx
je 0x45fa3b
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 8]
push edx
call dword [0x4bc0b8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 8]
push ecx
call dword [0x4bc040]
mov dword [ebp - 0x108], eax
mov edx, dword [ebp - 0x414]
movzx eax, byte [edx + 0xb4]
test eax, eax
je 0x45f878
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x14], 0
jne 0x45f818
mov dword [ebp - 0x118], 0
xor edx, edx
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x110], edx
mov dword [ebp - 0x10c], edx
lea eax, [ebp - 0x118]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc404]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 4]
push ecx
call dword [0x4bc0c0]
mov edx, dword [ebp - 0x414]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 0x10c]
sub eax, dword [ebp - 0x114]
push eax
mov ecx, dword [ebp - 0x110]
sub ecx, dword [ebp - 0x118]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 4]
push eax
call dword [0x4bc0bc]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x14], eax
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x14]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0xc]
push edx
call dword [0x4bc0b8]
push 0xcc0020
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x8c]
push edx
mov eax, dword [ebp - 0x78]
sub eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x7c]
sub ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0xc]
push edx
call dword [0x4bc0b4]
jmp 0x45f832
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x14]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0xc]
push eax
call dword [0x4bc0b8]
push 0xcc0020
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [ebp - 0x78]
sub edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 8]
push ecx
call dword [0x4bc0b4]
lea edx, [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x50]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x50]
mov edx, dword [eax]
mov eax, dword [edx + 0x108]
call eax
mov dword [ebp - 0x11c], 0
jmp 0x45f8c0
mov ecx, dword [ebp - 0x11c]
add ecx, 1
mov dword [ebp - 0x11c], ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xe8
call fcn.004156c0
cmp dword [ebp - 0x11c], eax
jge 0x45f920
mov edx, dword [ebp - 0x11c]
push edx
mov ecx, dword [ebp - 0x414]
add ecx, 0xe8
call fcn.0045c650
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 8]
push edx
mov eax, dword [ebp - 0x120]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x120]
mov eax, dword [edx + 0x120]
call eax
jmp 0x45f8b1
mov ecx, dword [ebp - 0x108]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 8]
push eax
call dword [0x4bc044]
push 0xcc0020
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp - 0x78]
sub edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x8c]
push eax
call dword [0x4bc0b4]
mov ecx, dword [ebp - 0x104]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 8]
push eax
call dword [0x4bc0b8]
mov ecx, dword [ebp - 0x414]
movzx edx, byte [ecx + 0x48]
test edx, edx
je 0x45fa0b
mov eax, dword [0x4d99f0]
push eax
mov ecx, dword [ebp - 0x8c]
push ecx
call dword [0x4bc0b8]
mov dword [ebp - 0x124], eax
push 5
call dword [0x4bc0d0]
push eax
mov edx, dword [ebp - 0x8c]
push edx
call dword [0x4bc0b8]
mov eax, dword [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
mov edx, dword [ebp - 0x98]
push edx
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [ebp - 0x8c]
push ecx
call dword [0x4bc08c]
mov edx, dword [ebp - 0x124]
push edx
mov eax, dword [ebp - 0x8c]
push eax
call dword [0x4bc0b8]
mov ecx, dword [ebp - 0x414]
movzx edx, byte [ecx + 0x49]
test edx, edx
je 0x45fa39
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x4c]
push ecx
lea edx, [ebp - 0x9c]
push edx
mov eax, dword [ebp - 0x8c]
push eax
call fcn.0047c840
add esp, 0xc
jmp 0x45fa8c
mov ecx, dword [ebp - 0x8c]
push ecx
call dword [0x4bc040]
mov dword [ebp - 0x128], eax
lea edx, [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x8c]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x50]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x50]
mov edx, dword [edx]
mov eax, dword [edx + 0x108]
call eax
mov ecx, dword [ebp - 0x128]
push ecx
mov edx, dword [ebp - 0x8c]
push edx
call dword [0x4bc044]
lea eax, [ebp - 0x8c]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc368]
mov eax, dword [ebp - 0x414]
movzx ecx, byte [eax + 0xb1]
test ecx, ecx
je 0x45fac6
push 0
push 0
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
call dword [0x4bc370]
mov al, 1
jmp 0x461275
lea ecx, [ebp - 0x13c]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
call dword [0x4bc404]
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x12c], ecx
mov edx, dword [ebp - 0x12c]
push edx
call dword [0x4bc040]
mov dword [ebp - 0x140], eax
lea eax, [ebp - 0x13c]
push eax
mov ecx, dword [ebp - 0x12c]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x50]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x50]
mov edx, dword [eax]
mov eax, dword [edx + 0x108]
call eax
mov ecx, dword [ebp + 0x10]
and ecx, 0x10
je 0x45fbfd
push 5
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
call dword [0x4bc3a0]
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 0
je 0x45fbfd
mov dword [ebp - 0x154], 0
xor ecx, ecx
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x148], ecx
lea edx, [ebp - 0x154]
push edx
mov eax, dword [ebp - 0x144]
push eax
call dword [0x4bc400]
push 2
lea ecx, [ebp - 0x154]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
push 0
call dword [0x4bc374]
push 0
mov ecx, dword [ebp - 0x150]
neg ecx
push ecx
mov edx, dword [ebp - 0x154]
neg edx
push edx
mov eax, dword [ebp - 0x12c]
push eax
call dword [0x4bc048]
mov ecx, dword [ebp + 0x10]
or ecx, 2
push ecx
mov edx, dword [ebp + 0xc]
push edx
push 0x317
mov eax, dword [ebp - 0x144]
push eax
call dword [0x4bc43c]
push 2
mov ecx, dword [ebp - 0x144]
push ecx
call dword [0x4bc3a0]
mov dword [ebp - 0x144], eax
jmp 0x45fb4c
mov edx, dword [ebp - 0x140]
push edx
mov eax, dword [ebp - 0x12c]
push eax
call dword [0x4bc044]
jmp case.default.0x45f116
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x158], ecx
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x6c], 0
jle 0x45fc3d
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x6c]
mov dword [eax + 0x18], edx
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x70], 0
jle 0x45fc5b
mov ecx, dword [ebp - 0x158]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x70]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x74], 0
jle 0x45fc79
mov edx, dword [ebp - 0x158]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x74]
mov dword [edx + 0x20], ecx
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x78], 0
jle 0x45fc97
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x78]
mov dword [eax + 0x24], edx
jmp case.default.0x45f116
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x54], 0
je 0x45fd26
mov dword [ebp - 0x178], 0
xor ecx, ecx
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x16c], ecx
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x178], 0x16
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x54]
mov dword [ebp - 0x174], eax
call dword [0x4bc14c]
mov dword [ebp - 0x170], eax
lea ecx, [ebp - 0x178]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x54]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x54]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x50], 0
je 0x45fd40
mov edx, dword [ebp - 0x414]
mov ecx, dword [edx + 0x50]
call fcn.0046e100
mov al, 1
jmp 0x461275
mov dword [ebp - 0x17c], 0
jmp 0x45fd62
mov eax, dword [ebp - 0x17c]
add eax, 1
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x414]
add ecx, 0xc4
call fcn.004156c0
cmp dword [ebp - 0x17c], eax
jge 0x45fe72
mov ecx, dword [ebp - 0x17c]
push ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xc4
call fcn.0045c650
mov dword [ebp - 0x180], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x414]
mov ecx, dword [edx + 8]
cmp ecx, dword [eax]
jne 0x45fe6d
mov edx, dword [ebp + 0xc]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x180]
cmp dword [ecx + 0xc], eax
jne 0x45fe6d
mov edx, dword [ebp - 0x180]
movzx eax, byte [edx + 0x10]
test eax, eax
jne 0x45fe6d
mov dword [ebp - 0x1a0], 0
xor ecx, ecx
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x190], ecx
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x188], ecx
mov dword [ebp - 0x184], ecx
mov dword [ebp - 0x1a0], 0x18
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x188], edx
call dword [0x4bc14c]
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x1a0]
push eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov edx, dword [edx]
mov eax, dword [edx + 0xf8]
call eax
jmp 0x45fe72
jmp 0x45fd53
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
mov byte [ecx + 0xb5], 0
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x1a4]
push eax
mov ecx, dword [ebp - 0x1a8]
push ecx
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x1f8], eax
cmp dword [ebp - 0x1f8], 0
jne 0x45fed8
jmp case.default.0x45f116
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x58], 0
je 0x45ff80
mov dword [ebp - 0x218], 0
xor eax, eax
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], eax
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x20c], ecx
mov edx, dword [ebp - 0x1a4]
mov dword [ebp - 0x208], edx
mov dword [ebp - 0x218], 0xc
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov dword [ebp - 0x214], ecx
call dword [0x4bc14c]
mov dword [ebp - 0x210], eax
lea edx, [ebp - 0x218]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x58]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0xf8]
call eax
lea ecx, [ebp - 0x1f4]
push ecx
mov edx, dword [ebp - 0x1f8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x1f8]
mov edx, dword [eax + 0x98]
call edx
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1f4]
call fcn.0045ca90
movzx eax, al
test eax, eax
je 0x45ffda
mov byte [ebp - 0x405], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f4]
call fcn.0045c870
mov al, byte [ebp - 0x405]
jmp 0x461275
push 0x2c
push 0
mov ecx, dword [ebp - 0x414]
add ecx, 0x1c
push ecx
call fcn.004a0650
add esp, 0xc
mov edx, dword [ebp - 0x414]
mov dword [edx + 0x1c], 0x2c
mov eax, dword [ebp - 0x414]
mov dword [eax + 0x20], 1
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [0x4d99f4]
mov dword [ecx + 0x3c], edx
lea ecx, [ebp - 0x1f4]
call fcn.0045e980
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x40], eax
mov edx, dword [ebp - 0x1f8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x1f8]
mov edx, dword [eax + 0x30]
call edx
mov ecx, dword [ebp - 0x414]
add ecx, 0x2c
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x18], 0
jne 0x4600f3
push 0
mov edx, dword [0x4d99f4]
push edx
push 0
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
push ecx
push accept
push accept
push accept
push accept
push reloc.WS2_32.dll_closesocket
push 0
push str.tooltips_class32
push 0
call dword [0x4bc468]
mov edx, dword [ebp - 0x414]
mov dword [edx + 0x18], eax
mov eax, dword [ebp - 0x414]
add eax, 0x1c
push eax
push 0
push 0x404
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x18]
push edx
call dword [0x4bc43c]
mov eax, dword [ebp - 0x414]
add eax, 0x1c
push eax
push 0
push 0x409
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x18]
push edx
call dword [0x4bc43c]
mov eax, dword [ebp - 0x414]
add eax, 0x1c
push eax
push 1
push 0x411
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x18]
push edx
call dword [0x4bc43c]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f4]
call fcn.0045c870
mov al, 1
jmp 0x461275
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x18], 0
je 0x46017b
mov ecx, dword [ebp - 0x414]
add ecx, 0x1c
push ecx
push 0
push 0x411
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x18]
push eax
call dword [0x4bc43c]
mov ecx, dword [ebp - 0x414]
movzx edx, byte [ecx + 0xb5]
test edx, edx
je 0x4601a4
push 0xffffffffffffffff
push 0
push 0x200
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
push ecx
call dword [0x4bc43c]
mov edx, dword [ebp - 0x414]
mov byte [edx + 0xb5], 0
jmp case.default.0x45f116
mov eax, dword [ebp - 0x414]
movzx ecx, byte [eax + 0xb5]
test ecx, ecx
jne 0x460268
mov dword [ebp - 0x254], 0
xor edx, edx
mov dword [ebp - 0x250], edx
mov dword [ebp - 0x24c], edx
mov dword [ebp - 0x248], edx
mov dword [ebp - 0x254], 0x10
mov dword [ebp - 0x250], 3
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
mov dword [ebp - 0x24c], ecx
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x18], 0
jne 0x460223
mov dword [ebp - 0x42c], 0x3e8
jmp 0x460242
push 0
push 3
push 0x415
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x18]
push ecx
call dword [0x4bc43c]
mov dword [ebp - 0x42c], eax
mov edx, dword [ebp - 0x42c]
mov dword [ebp - 0x248], edx
lea eax, [ebp - 0x254]
push eax
call dword [0x4bc034]
mov ecx, dword [ebp - 0x414]
mov byte [ecx + 0xb5], 1
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x224], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [ebp - 0x224]
mov dword [eax + 0x64], ecx
mov edx, dword [ebp - 0x220]
mov dword [eax + 0x68], edx
mov eax, dword [ebp - 0x220]
push eax
mov ecx, dword [ebp - 0x224]
push ecx
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x4602ef
mov edx, dword [ebp - 0x21c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x21c]
mov edx, dword [eax + 0x1c]
call edx
cmp eax, dword [ebp - 0x414]
je 0x4602ef
jmp case.default.0x45f116
mov dword [ebp - 0x244], 0
xor eax, eax
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], eax
mov ecx, dword [ebp - 0x224]
mov dword [ebp - 0x238], ecx
mov edx, dword [ebp - 0x220]
mov dword [ebp - 0x234], edx
call dword [0x4bc14c]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x414]
mov ecx, dword [ebp - 0x21c]
cmp ecx, dword [eax + 0x58]
je 0x4603e2
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x58], 0
je 0x4603e2
mov dword [ebp - 0x244], 0xa
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov dword [ebp - 0x240], ecx
lea edx, [ebp - 0x244]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x58]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x58]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x58], 0
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0x18], 0
je 0x4603e2
mov eax, dword [ebp - 0x414]
add eax, 0x1c
push eax
push 0
push 0x411
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x18]
push edx
call dword [0x4bc43c]
mov eax, dword [ebp - 0x414]
mov ecx, dword [ebp - 0x21c]
cmp ecx, dword [eax + 0x58]
je 0x46043e
cmp dword [ebp - 0x21c], 0
je 0x46043e
mov dword [ebp - 0x244], 0xb
mov edx, dword [ebp - 0x21c]
mov dword [ebp - 0x240], edx
lea eax, [ebp - 0x244]
push eax
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x21c]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x21c]
mov dword [ecx + 0x58], edx
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x5c], 0
je 0x460488
mov dword [ebp - 0x244], 9
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x5c]
mov dword [ebp - 0x240], edx
lea eax, [ebp - 0x244]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x5c]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x5c]
mov edx, dword [edx]
mov eax, dword [edx + 0xf8]
call eax
jmp 0x4604c4
cmp dword [ebp - 0x21c], 0
je 0x4604c4
mov dword [ebp - 0x244], 9
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x240], ecx
lea edx, [ebp - 0x244]
push edx
mov eax, dword [ebp - 0x21c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x21c]
mov eax, dword [edx + 0xf8]
call eax
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc454]
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x25c], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x258], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x25c]
mov dword [ecx + 0x64], edx
mov eax, dword [ebp - 0x258]
mov dword [ecx + 0x68], eax
mov ecx, dword [ebp - 0x258]
push ecx
mov edx, dword [ebp - 0x25c]
push edx
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x280], eax
cmp dword [ebp - 0x280], 0
jne 0x460543
jmp case.default.0x45f116
mov eax, dword [ebp - 0x280]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x280]
mov eax, dword [edx + 0x1c]
call eax
cmp eax, dword [ebp - 0x414]
je 0x460563
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x280]
mov dword [ecx + 0x5c], edx
mov eax, dword [ebp - 0x280]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x280]
mov eax, dword [edx + 0xe0]
call eax
mov ecx, dword [ebp - 0x414]
call fcn.00462050
mov dword [ebp - 0x27c], 0
xor ecx, ecx
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x270], ecx
mov dword [ebp - 0x26c], ecx
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x27c], 0xd
mov edx, dword [ebp - 0x280]
mov dword [ebp - 0x278], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x260], ecx
mov edx, dword [ebp - 0x25c]
mov dword [ebp - 0x270], edx
mov eax, dword [ebp - 0x258]
mov dword [ebp - 0x26c], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x266], cx
call dword [0x4bc14c]
mov dword [ebp - 0x274], eax
lea edx, [ebp - 0x27c]
push edx
mov eax, dword [ebp - 0x280]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x280]
mov eax, dword [edx + 0xf8]
call eax
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc454]
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x284], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x288]
mov dword [ecx + 0x64], edx
mov eax, dword [ebp - 0x284]
mov dword [ecx + 0x68], eax
mov ecx, dword [ebp - 0x284]
push ecx
mov edx, dword [ebp - 0x288]
push edx
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0
jne 0x4606bc
jmp case.default.0x45f116
mov eax, dword [ebp - 0x2ac]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2ac]
mov eax, dword [edx + 0x1c]
call eax
cmp eax, dword [ebp - 0x414]
je 0x4606dc
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
call fcn.00462050
mov dword [ebp - 0x2a8], 0
xor ecx, ecx
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x2a0], ecx
mov dword [ebp - 0x29c], ecx
mov dword [ebp - 0x298], ecx
mov dword [ebp - 0x294], ecx
mov dword [ebp - 0x290], ecx
mov dword [ebp - 0x28c], ecx
mov dword [ebp - 0x2a8], 0x10
mov edx, dword [ebp - 0x2ac]
mov dword [ebp - 0x2a4], edx
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x29c], eax
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x298], ecx
mov dx, word [ebp + 0xc]
mov word [ebp - 0x292], dx
call dword [0x4bc14c]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x2a8]
push eax
mov ecx, dword [ebp - 0x2ac]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x2ac]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x2ac]
mov dword [ecx + 0x5c], edx
jmp case.default.0x45f116
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x2b4]
mov dword [ecx + 0x64], edx
mov eax, dword [ebp - 0x2b0]
mov dword [ecx + 0x68], eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x5c], 0
jne 0x4607e2
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
call fcn.00462080
mov dword [ebp - 0x2d4], 0
xor edx, edx
mov dword [ebp - 0x2d0], edx
mov dword [ebp - 0x2cc], edx
mov dword [ebp - 0x2c8], edx
mov dword [ebp - 0x2c4], edx
mov dword [ebp - 0x2c0], edx
mov dword [ebp - 0x2bc], edx
mov dword [ebp - 0x2b8], edx
mov dword [ebp - 0x2d4], 0xe
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x5c]
mov dword [ebp - 0x2d0], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2c8], ecx
mov edx, dword [ebp - 0x2b0]
mov dword [ebp - 0x2c4], edx
mov ax, word [ebp + 0xc]
mov word [ebp - 0x2be], ax
call dword [0x4bc14c]
mov dword [ebp - 0x2cc], eax
lea ecx, [ebp - 0x2d4]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x5c]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x5c], 0
jmp case.default.0x45f116
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
call dword [0x4bc454]
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x2dc], edx
mov eax, dword [ebp + 0x10]
shr eax, 0x10
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x2d8], ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [ebp - 0x2dc]
mov dword [edx + 0x64], eax
mov ecx, dword [ebp - 0x2d8]
mov dword [edx + 0x68], ecx
mov edx, dword [ebp - 0x2d8]
push edx
mov eax, dword [ebp - 0x2dc]
push eax
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x300], eax
cmp dword [ebp - 0x300], 0
jne 0x46092c
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x300]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x300]
mov eax, dword [edx + 0x1c]
call eax
cmp eax, dword [ebp - 0x414]
je 0x46094c
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x300]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x300]
mov eax, dword [edx + 0xe0]
call eax
mov ecx, dword [ebp - 0x414]
call fcn.00462050
mov dword [ebp - 0x2fc], 0
xor ecx, ecx
mov dword [ebp - 0x2f8], ecx
mov dword [ebp - 0x2f4], ecx
mov dword [ebp - 0x2f0], ecx
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x2e8], ecx
mov dword [ebp - 0x2e4], ecx
mov dword [ebp - 0x2e0], ecx
mov dword [ebp - 0x2fc], 0xf
mov edx, dword [ebp - 0x300]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2e0], ecx
mov edx, dword [ebp - 0x2dc]
mov dword [ebp - 0x2f0], edx
mov eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x2ec], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x2e6], cx
call dword [0x4bc14c]
mov dword [ebp - 0x2f4], eax
lea edx, [ebp - 0x2fc]
push edx
mov eax, dword [ebp - 0x300]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x300]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x300]
mov dword [ecx + 0x5c], edx
jmp case.default.0x45f116
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x308], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x304], eax
lea ecx, [ebp - 0x308]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx]
push eax
call dword [0x4bc408]
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x308]
mov dword [ecx + 0x64], edx
mov eax, dword [ebp - 0x304]
mov dword [ecx + 0x68], eax
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x5c], 0
jne 0x460a90
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
call fcn.00462080
mov dword [ebp - 0x328], 0
xor edx, edx
mov dword [ebp - 0x324], edx
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x31c], edx
mov dword [ebp - 0x318], edx
mov dword [ebp - 0x314], edx
mov dword [ebp - 0x310], edx
mov dword [ebp - 0x30c], edx
mov dword [ebp - 0x328], 0x11
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x5c]
mov dword [ebp - 0x324], ecx
mov edx, dword [ebp - 0x308]
mov dword [ebp - 0x31c], edx
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x318], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x312], cx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x5c]
mov dword [ebp - 0x30c], eax
call dword [0x4bc14c]
mov dword [ebp - 0x320], eax
lea ecx, [ebp - 0x328]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x5c]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x5c], 0
jmp case.default.0x45f116
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x330], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x32c], edx
lea eax, [ebp - 0x330]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc408]
mov eax, dword [ebp - 0x414]
mov ecx, dword [ebp - 0x330]
mov dword [eax + 0x64], ecx
mov edx, dword [ebp - 0x32c]
mov dword [eax + 0x68], edx
mov eax, dword [ebp - 0x32c]
push eax
mov ecx, dword [ebp - 0x330]
push ecx
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x358], eax
cmp dword [ebp - 0x358], 0
jne 0x460bdf
jmp case.default.0x45f116
mov edx, dword [ebp - 0x358]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x358]
mov edx, dword [eax + 0x1c]
call edx
cmp eax, dword [ebp - 0x414]
je 0x460bff
jmp case.default.0x45f116
mov eax, dword [ebp + 0xc]
shr eax, 0x10
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x334], ecx
mov dword [ebp - 0x354], 0
xor edx, edx
mov dword [ebp - 0x350], edx
mov dword [ebp - 0x34c], edx
mov dword [ebp - 0x348], edx
mov dword [ebp - 0x344], edx
mov dword [ebp - 0x340], edx
mov dword [ebp - 0x33c], edx
mov dword [ebp - 0x338], edx
mov dword [ebp - 0x354], 0x12
mov eax, dword [ebp - 0x358]
mov dword [ebp - 0x350], eax
xor ecx, ecx
cmp dword [ebp - 0x334], 0
setl cl
and ecx, 0xffff
movzx edx, cx
mov dword [ebp - 0x33c], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x338], eax
call fcn.0045edb0
mov word [ebp - 0x33e], ax
call dword [0x4bc14c]
mov dword [ebp - 0x34c], eax
lea ecx, [ebp - 0x354]
push ecx
mov edx, dword [ebp - 0x358]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x358]
mov edx, dword [eax + 0xf8]
call edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x64]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x68]
and ecx, 0xffff
movzx eax, cx
shl eax, 0x10
or edx, eax
push edx
push 0
push 0x200
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
push edx
call dword [0x4bc43c]
jmp case.default.0x45f116
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x54], 0
jne 0x460d0e
jmp case.default.0x45f116
mov dword [ebp - 0x378], 0
xor ecx, ecx
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x370], ecx
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x368], ecx
mov dword [ebp - 0x364], ecx
mov dword [ebp - 0x360], ecx
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x378], 5
mov dl, byte [ebp + 0xc]
mov byte [ebp - 0x364], dl
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x64]
mov edx, dword [eax + 0x68]
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x368], edx
call fcn.0045edb0
mov word [ebp - 0x362], ax
call dword [0x4bc14c]
mov dword [ebp - 0x370], eax
lea eax, [ebp - 0x378]
push eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x54]
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0x54]
mov edx, dword [edx]
mov eax, dword [edx + 0xf8]
call eax
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x54], 0
jne 0x460dc0
jmp case.default.0x45f116
mov dword [ebp - 0x398], 0
xor edx, edx
mov dword [ebp - 0x394], edx
mov dword [ebp - 0x390], edx
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x388], edx
mov dword [ebp - 0x384], edx
mov dword [ebp - 0x380], edx
mov dword [ebp - 0x37c], edx
mov dword [ebp - 0x398], 3
mov al, byte [ebp + 0xc]
mov byte [ebp - 0x384], al
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x64]
mov eax, dword [ecx + 0x68]
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x388], eax
call fcn.0045edb0
mov word [ebp - 0x382], ax
call dword [0x4bc14c]
mov dword [ebp - 0x390], eax
lea ecx, [ebp - 0x398]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x54]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x54]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x54]
mov dword [ecx + 0x60], eax
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x60], 0
jne 0x460e84
jmp case.default.0x45f116
mov dword [ebp - 0x3b8], 0
xor edx, edx
mov dword [ebp - 0x3b4], edx
mov dword [ebp - 0x3b0], edx
mov dword [ebp - 0x3ac], edx
mov dword [ebp - 0x3a8], edx
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x3a0], edx
mov dword [ebp - 0x39c], edx
mov dword [ebp - 0x3b8], 4
mov al, byte [ebp + 0xc]
mov byte [ebp - 0x3a4], al
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x64]
mov eax, dword [ecx + 0x68]
mov dword [ebp - 0x3ac], edx
mov dword [ebp - 0x3a8], eax
call fcn.0045edb0
mov word [ebp - 0x3a2], ax
call dword [0x4bc14c]
mov dword [ebp - 0x3b0], eax
lea ecx, [ebp - 0x3b8]
push ecx
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0x60]
mov ecx, dword [ebp - 0x414]
mov ecx, dword [ecx + 0x60]
mov edx, dword [eax]
mov eax, dword [edx + 0xf8]
call eax
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x60], 0
jmp case.default.0x45f116
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movzx eax, dx
cmp eax, 1
je 0x460f48
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x414]
movzx edx, byte [ecx + 0xb6]
test edx, edx
je 0x460f60
mov al, 1
jmp 0x461275
mov dword [ebp - 0x3c0], 0
xor eax, eax
mov dword [ebp - 0x3bc], eax
lea ecx, [ebp - 0x3c0]
push ecx
call dword [0x4bc378]
lea edx, [ebp - 0x3c0]
push edx
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
push ecx
call dword [0x4bc408]
mov edx, dword [ebp - 0x3bc]
push edx
mov eax, dword [ebp - 0x3c0]
push eax
mov ecx, dword [ebp - 0x414]
call fcn.004631c0
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0
jne 0x460fc2
jmp case.default.0x45f116
mov ecx, dword [ebp - 0x3e4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3e4]
mov eax, dword [edx + 0x14]
call eax
and eax, 2
jne 0x460fdf
jmp case.default.0x45f116
mov dword [ebp - 0x3e0], 0
xor ecx, ecx
mov dword [ebp - 0x3dc], ecx
mov dword [ebp - 0x3d8], ecx
mov dword [ebp - 0x3d4], ecx
mov dword [ebp - 0x3d0], ecx
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x3c8], ecx
mov dword [ebp - 0x3c4], ecx
mov dword [ebp - 0x3e0], 0x17
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x3c4], eax
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3d4], ecx
mov edx, dword [ebp - 0x3bc]
mov dword [ebp - 0x3d0], edx
call fcn.0045edb0
mov word [ebp - 0x3ca], ax
call dword [0x4bc14c]
mov dword [ebp - 0x3d8], eax
lea eax, [ebp - 0x3e0]
push eax
mov ecx, dword [ebp - 0x3e4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3e4]
mov eax, dword [edx + 0xf8]
call eax
mov al, 1
jmp 0x461275
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x3e8], ecx
cmp dword [ebp - 0x3e8], 0
je 0x4610bd
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x2000
push ecx
mov edx, dword [ebp - 0x3e8]
mov eax, dword [edx]
push eax
call dword [0x4bc43c]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x461275
cmp dword [ebp + 0x10], 0
jne 0x4610ce
jmp case.default.0x45f116
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x3ec], edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x2000
push edx
mov eax, dword [ebp - 0x3ec]
push eax
call dword [0x4bc43c]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x461275
cmp dword [ebp + 0x10], 0
jne 0x46110c
jmp case.default.0x45f116
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x3f0], edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x2000
push edx
mov eax, dword [ebp - 0x3f0]
push eax
call dword [0x4bc43c]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x461275
mov dword [ebp - 0x10], 0
push 0
mov ecx, dword [ebp - 0x414]
add ecx, 0x100
call fcn.0045c620
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x461273
push 0
mov ecx, dword [ebp - 0x414]
add ecx, 0x100
call fcn.0045c550
mov edx, dword [ebp - 0x10]
cmp dword [edx + 0x44], 0
je 0x4611aa
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x44]
add ecx, 0x34
call fcn.0047d260
movzx ecx, al
test ecx, ecx
je 0x4611aa
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x44]
add ecx, 0x34
call fcn.0047d280
mov dword [ebp - 0x3f4], 0
jmp 0x4611c5
mov ecx, dword [ebp - 0x3f4]
add ecx, 1
mov dword [ebp - 0x3f4], ecx
mov ecx, dword [ebp - 0x414]
add ecx, 0xb8
call fcn.004156c0
cmp dword [ebp - 0x3f4], eax
jge 0x461214
mov edx, dword [ebp - 0x3f4]
push edx
mov ecx, dword [ebp - 0x414]
add ecx, 0xb8
call fcn.0045c650
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x430]
mov eax, dword [edx]
call eax
jmp 0x4611b6
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x40c], edx
cmp dword [ebp - 0x40c], 0
je 0x461264
mov ecx, dword [ebp - 0x40c]
call fcn.0045c870
mov eax, 1
and eax, 1
je 0x461256
mov ecx, dword [ebp - 0x40c]
push ecx
call fcn.0049d76b
add esp, 4
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x434], edx
jmp 0x46126e
mov dword [ebp - 0x434], 0
jmp 0x461147
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x4c]
xor ecx, ebp
call fcn.0049d75c
mov esp, ebp
pop ebp
ret 0x10