Function at 0x40341e
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.0043033b
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x6c
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0x88
call fcn.0043033b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5b7175
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
push 8
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x5b712a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0
push 8
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x5b712a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov ebx, dword [0xde09e0]
call fcn.004020fb
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x406832
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40682f
cmp dword [ebp - 4], 1
jne 0x40355b
mov eax, 0x5b7154
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x403552
push ebx
call fcn.00430341
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4035b2
cmp dword [ebp - 4], 2
jne 0x403584
mov eax, 0x5b715e
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40357b
push ebx
call fcn.00430341
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4035b2
cmp dword [ebp - 4], 3
jne 0x4035ad
mov eax, 0x5b7169
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4035a4
push ebx
call fcn.00430341
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4035b2
jmp 0x406832
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.0040697d
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
call fcn.00407c78
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x403600
push ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x403610
push ebx
call fcn.00430341
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x403624
push ebx
call fcn.00430341
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.00407e7d
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x5b7173
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.004033c2
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40365b
push ebx
call fcn.00430341
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0xf
call fcn.0043034d
cmp dword [ebp - 0x44], esp
je 0x40368f
push 0x267
push 0x4016c8e
push 6
call fcn.00430347
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40369f
push ebx
call fcn.00430341
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4036b2
mov eax, 0x5b70ff
push eax
push 1
mov ebx, 0x432140
call fcn.00430353
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4036dc
push ebx
call fcn.00430341
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00407f2e
mov dword [ebp - 0x1c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4036ff
mov eax, 0x5b70ff
push eax
push 1
mov ebx, 0x432100
call fcn.00430353
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.00407f52
test eax, eax
je 0x403748
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x403748
mov eax, 1
jmp 0x40374d
mov eax, 0
test eax, eax
je 0x406828
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
push 0x2000
push 0x1000
call fcn.004082f3
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 0x10
call fcn.0043034d
cmp dword [ebp - 0x54], esp
je 0x4037e7
push 0x433
push 0x4016c8e
push 6
call fcn.00430347
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.00408316
push 8
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5b712a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.00408497
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00430341
add esp, 4
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4039b4
mov ebx, dword [ebp - 0x28]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40388c
push 0x51a
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4038a9
push 0x51a
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.00402f90
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4038f9
push 0x54c
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403916
push 0x54c
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.00402f90
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403966
push 0x54c
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403983
push 0x54c
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.00408316
pop eax
pop ebx
pop ecx
jmp 0x403857
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00408a7c
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4039e2
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4039de
imul eax, dword [ebx]
jmp 0x4039d3
mov ecx, eax
test ecx, ecx
je 0x403a0a
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430341
add esp, 4
pop ebx
call fcn.00430341
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4039e8
call fcn.00430341
add esp, 4
mov eax, 0x5b712a
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040999d
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40680c
cmp dword [ebp - 4], 1
jne 0x403b81
mov ebx, dword [ebp - 0x30]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403a6e
push 0x6bd
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403a8b
push 0x6bd
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push getpeername
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x403ab9
mov eax, 0x5b70ff
push eax
push 2
mov ebx, 0x430a00
call fcn.00430353
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x403b6f
mov ebx, dword [ebp - 0x30]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403b00
push 0x70c
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403b1d
push 0x70c
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push getpeername
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x403b4b
mov eax, 0x5b70ff
push eax
push 2
mov ebx, 0x430a00
call fcn.00430353
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x403b6f
xor eax, eax
jmp 0x403b74
mov eax, 1
test eax, eax
je 0x403b81
jmp 0x406804
mov ebx, dword [ebp - 0x30]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403ba8
push 0x7b8
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403bc5
push 0x7b8
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x5b712a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x40]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.0040a5b3
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.00430341
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x403c5f
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0
cmp eax, ecx
jl 0x403c47
push 0x7f2
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x403c5f
mov eax, 1
jmp 0x403c64
mov eax, 0
test eax, eax
je 0x406804
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403c9c
push 0x81d
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403cb9
push 0x81d
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x403ce4
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x403cf7
push ebx
call fcn.00430341
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x403d43
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x403d77
and eax, 0xff
jmp 0x403dcc
cmp ecx, 0x80000201
jne 0x403d82
cwde
jmp 0x403dcc
cmp ecx, 0x80000301
je 0x403dcc
cmp ecx, 0x80000401
je 0x403dcc
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403dbc
cmp ecx, 0x80000601
je 0x403dc1
push 0x8a5
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403dc7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0xde09e4]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x403e08
mov ebx, dword [0xde09e4]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x403e08
mov eax, 1
jmp 0x403e0d
mov eax, 0
test eax, eax
je 0x40454e
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 9
cmp eax, ecx
jl 0x403e3d
push 0xcc3
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x403e8e
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xa
cmp eax, ecx
jl 0x403e76
push 0xcec
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x403e8e
mov eax, 1
jmp 0x403e93
mov eax, 0
test eax, eax
je 0x404549
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x403ec3
push 0xd38
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404051
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x403f08
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x403f3c
and eax, 0xff
jmp 0x403f91
cmp ecx, 0x80000201
jne 0x403f47
cwde
jmp 0x403f91
cmp ecx, 0x80000301
je 0x403f91
cmp ecx, 0x80000401
je 0x403f91
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403f81
cmp ecx, 0x80000601
je 0x403f86
push 0xd84
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403f8c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x403fdd
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404039
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x404079
push 0xdf4
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404145
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4040d1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40412d
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x40416d
push 0xe69
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x404549
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00402f90
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4041c5
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x404205
and eax, 0xff
jmp 0x40425a
cmp ecx, 0x80000201
jne 0x404210
cwde
jmp 0x40425a
cmp ecx, 0x80000301
je 0x40425a
cmp ecx, 0x80000401
je 0x40425a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40424a
cmp ecx, 0x80000601
je 0x40424f
push 0xf03
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404255
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
push eax
push dword [ebp - 0x38]
call fcn.00402f90
mov dword [ebp - 0x38], eax
push 8
call fcn.0043033b
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5b712a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x38]
call fcn.0040a5b3
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0
cmp eax, ecx
jl 0x4042cc
push 0xfa7
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40445a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404311
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x404345
and eax, 0xff
jmp 0x40439a
cmp ecx, 0x80000201
jne 0x404350
cwde
jmp 0x40439a
cmp ecx, 0x80000301
je 0x40439a
cmp ecx, 0x80000401
je 0x40439a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40438a
cmp ecx, 0x80000601
je 0x40438f
push 0xff3
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404395
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4043e6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404442
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0
cmp eax, ecx
jl 0x404482
push 0x1063
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404549
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4044da
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404536
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
jmp 0x406804
mov ebx, dword [0xde09e4]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x406023
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x4045a0
push 0x11a7
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x40462a
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 6
cmp eax, ecx
jl 0x4045d9
push 0x11d0
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x40462a
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 8
cmp eax, ecx
jl 0x404612
push 0x11f9
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x40462a
mov eax, 1
jmp 0x40462f
mov eax, 0
test eax, eax
je 0x4048dc
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xc
cmp eax, ecx
jl 0x40465f
push 0x134b
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4047ed
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4046a4
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4046d8
and eax, 0xff
jmp 0x40472d
cmp ecx, 0x80000201
jne 0x4046e3
cwde
jmp 0x40472d
cmp ecx, 0x80000301
je 0x40472d
cmp ecx, 0x80000401
je 0x40472d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40471d
cmp ecx, 0x80000601
je 0x404722
push 0x1397
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404728
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404779
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4047d5
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xc
cmp eax, ecx
jl 0x404815
push 0x1407
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4048dc
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40486d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4048c9
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x404904
push 0x14c8
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x40498e
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 7
cmp eax, ecx
jl 0x40493d
push 0x14f1
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40498e
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x404976
push 0x151a
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40498e
mov eax, 1
jmp 0x404993
mov eax, 0
test eax, eax
je 0x404e40
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x12
cmp eax, ecx
jl 0x4049c3
push 0x194d
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404a11
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x4049fc
push 0x1976
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404a11
xor eax, eax
jmp 0x404a16
mov eax, 1
test eax, eax
je 0x404ad9
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404a65
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404ac1
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x12
cmp eax, ecx
jl 0x404b01
push 0x19e8
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404c8f
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404b46
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x404b7a
and eax, 0xff
jmp 0x404bcf
cmp ecx, 0x80000201
jne 0x404b85
cwde
jmp 0x404bcf
cmp ecx, 0x80000301
je 0x404bcf
cmp ecx, 0x80000401
je 0x404bcf
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404bbf
cmp ecx, 0x80000601
je 0x404bc4
push 0x1a34
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404bca
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404c1b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404c77
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x404cb7
push 0x1aa4
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404e40
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404cfc
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x404d30
and eax, 0xff
jmp 0x404d85
cmp ecx, 0x80000201
jne 0x404d3b
cwde
jmp 0x404d85
cmp ecx, 0x80000301
je 0x404d85
cmp ecx, 0x80000401
je 0x404d85
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404d75
cmp ecx, 0x80000601
je 0x404d7a
push 0x1af0
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404d80
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404dd1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404e2d
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x404e68
push 0x1bc1
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x404ef2
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 9
cmp eax, ecx
jl 0x404ea1
push 0x1bea
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x404ef2
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x404eda
push 0x1c13
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404ef2
mov eax, 1
jmp 0x404ef7
mov eax, 0
test eax, eax
je 0x4053a4
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x12
cmp eax, ecx
jl 0x404f27
push 0x204c
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404f75
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x404f60
push 0x2075
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404f75
xor eax, eax
jmp 0x404f7a
mov eax, 1
test eax, eax
je 0x40503d
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404fc9
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405025
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x12
cmp eax, ecx
jl 0x405065
push 0x20e7
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4051f3
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4050aa
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4050de
and eax, 0xff
jmp 0x405133
cmp ecx, 0x80000201
jne 0x4050e9
cwde
jmp 0x405133
cmp ecx, 0x80000301
je 0x405133
cmp ecx, 0x80000401
je 0x405133
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405123
cmp ecx, 0x80000601
je 0x405128
push 0x2133
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40512e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40517f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4051db
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x40521b
push 0x21a3
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4053a4
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405260
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405294
and eax, 0xff
jmp 0x4052e9
cmp ecx, 0x80000201
jne 0x40529f
cwde
jmp 0x4052e9
cmp ecx, 0x80000301
je 0x4052e9
cmp ecx, 0x80000401
je 0x4052e9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4052d9
cmp ecx, 0x80000601
je 0x4052de
push 0x21ef
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4052e4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405335
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405391
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x4053cc
push 0x22d1
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x405456
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xa
cmp eax, ecx
jl 0x405405
push 0x22fa
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x405456
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xe
cmp eax, ecx
jl 0x40543e
push 0x2323
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x405456
mov eax, 1
jmp 0x40545b
mov eax, 0
test eax, eax
je 0x4059e1
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405497
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4054cb
and eax, 0xff
jmp 0x405520
cmp ecx, 0x80000201
jne 0x4054d6
cwde
jmp 0x405520
cmp ecx, 0x80000301
je 0x405520
cmp ecx, 0x80000401
je 0x405520
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405510
cmp ecx, 0x80000601
je 0x405515
push 0x27b3
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40551b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x40554d
push 0x2805
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40559b
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x18
cmp eax, ecx
jl 0x405586
push 0x282e
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40559b
xor eax, eax
jmp 0x4055a0
mov eax, 1
test eax, eax
je 0x405663
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4055ef
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40564b
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x40568b
push 0x28a0
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405819
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4056d0
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405704
and eax, 0xff
jmp 0x405759
cmp ecx, 0x80000201
jne 0x40570f
cwde
jmp 0x405759
cmp ecx, 0x80000301
je 0x405759
cmp ecx, 0x80000401
je 0x405759
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405749
cmp ecx, 0x80000601
je 0x40574e
push 0x28ec
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405754
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4057a5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405801
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x18
cmp eax, ecx
jl 0x405841
push 0x295c
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4059cf
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405886
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4058ba
and eax, 0xff
jmp 0x40590f
cmp ecx, 0x80000201
jne 0x4058c5
cwde
jmp 0x40590f
cmp ecx, 0x80000301
je 0x40590f
cmp ecx, 0x80000401
je 0x40590f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4058ff
cmp ecx, 0x80000601
je 0x405904
push 0x29a8
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40590a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40595b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4059b7
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x405a09
push 0x2a99
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x405a93
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 9
cmp eax, ecx
jl 0x405a42
push 0x2ac2
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x405a93
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xe
cmp eax, ecx
jl 0x405a7b
push 0x2aeb
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x405a93
mov eax, 1
jmp 0x405a98
mov eax, 0
test eax, eax
je 0x40601e
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405ad4
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405b08
and eax, 0xff
jmp 0x405b5d
cmp ecx, 0x80000201
jne 0x405b13
cwde
jmp 0x405b5d
cmp ecx, 0x80000301
je 0x405b5d
cmp ecx, 0x80000401
je 0x405b5d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405b4d
cmp ecx, 0x80000601
je 0x405b52
push 0x2f72
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405b58
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x405b8a
push 0x2fc4
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x405bd8
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x18
cmp eax, ecx
jl 0x405bc3
push 0x2fed
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x405bd8
xor eax, eax
jmp 0x405bdd
mov eax, 1
test eax, eax
je 0x405ca0
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405c2c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405c88
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x15
cmp eax, ecx
jl 0x405cc8
push 0x305f
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405e56
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405d0d
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405d41
and eax, 0xff
jmp 0x405d96
cmp ecx, 0x80000201
jne 0x405d4c
cwde
jmp 0x405d96
cmp ecx, 0x80000301
je 0x405d96
cmp ecx, 0x80000401
je 0x405d96
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405d86
cmp ecx, 0x80000601
je 0x405d8b
push 0x30ab
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405d91
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405de2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405e3e
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0x18
cmp eax, ecx
jl 0x405e7e
push 0x311b
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40600c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405ec3
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405ef7
and eax, 0xff
jmp 0x405f4c
cmp ecx, 0x80000201
jne 0x405f02
cwde
jmp 0x405f4c
cmp ecx, 0x80000301
je 0x405f4c
cmp ecx, 0x80000401
je 0x405f4c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405f3c
cmp ecx, 0x80000601
je 0x405f41
push 0x3167
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405f47
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405f98
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405ff4
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x40604b
push 0x324a
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x406456
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406087
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x4060bb
and eax, 0xff
jmp 0x406110
cmp ecx, 0x80000201
jne 0x4060c6
cwde
jmp 0x406110
cmp ecx, 0x80000301
je 0x406110
cmp ecx, 0x80000401
je 0x406110
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x406100
cmp ecx, 0x80000601
je 0x406105
push 0x36ab
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x40610b
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00402caf
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x40612e
cmp dword [ebp - 0x38], 0xa
jge 0x40612e
mov eax, 1
jmp 0x406133
mov eax, 0
test eax, eax
je 0x406451
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00402f90
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x40617e
push 0x37b2
push 0x4016c8e
push 4
call fcn.00430347
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40619b
push 0x37b2
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x406451
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xa
cmp eax, ecx
jl 0x4061d4
push 0x37fe
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406362
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406219
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x40624d
and eax, 0xff
jmp 0x4062a2
cmp ecx, 0x80000201
jne 0x406258
cwde
jmp 0x4062a2
cmp ecx, 0x80000301
je 0x4062a2
cmp ecx, 0x80000401
je 0x4062a2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406292
cmp ecx, 0x80000601
je 0x406297
push 0x384a
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40629d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4062ee
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40634a
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xa
cmp eax, ecx
jl 0x40638a
push 0x38ba
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x406451
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4063e2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40643e
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 5
cmp eax, ecx
jl 0x40647e
push 0x39a8
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x4064cf
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xa
cmp eax, ecx
jl 0x4064b7
push 0x39d1
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x4064cf
mov eax, 1
jmp 0x4064d4
mov eax, 0
test eax, eax
je 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x406504
push 0x3dcd
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x406552
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xb
cmp eax, ecx
jl 0x40653d
push 0x3df6
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x406552
xor eax, eax
jmp 0x406557
mov eax, 1
test eax, eax
je 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xc
cmp eax, ecx
jl 0x406587
push 0x3e42
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406715
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4065cc
mov eax, 0x5b712a
push eax
push 3
mov ebx, 0x431850
call fcn.00430353
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406600
and eax, 0xff
jmp 0x406655
cmp ecx, 0x80000201
jne 0x40660b
cwde
jmp 0x406655
cmp ecx, 0x80000301
je 0x406655
cmp ecx, 0x80000401
je 0x406655
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406645
cmp ecx, 0x80000601
je 0x40664a
push 0x3e8e
push 0x4016c8e
push 2
call fcn.00430347
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x406650
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402caf
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4066a1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4066fd
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
mov ebx, dword [ebp - 0x34]
call fcn.0040195a
mov eax, 0xc
cmp eax, ecx
jl 0x40673d
push 0x3efe
push 0x4016c8e
push 1
call fcn.00430347
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x406804
push 0xde09e0
push 4
mov eax, 2
call fcn.00430335
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xde09e0]
mov dword [ebp - 0x40], ebx
call fcn.0040195a
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406795
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00430371
add esp, 8
mov dword [0xde09e0], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.0043033b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4067f1
push eax
mov ebx, eax
call fcn.00403357
inc eax
push eax
call fcn.0043033b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x406804
pop eax
pop ebx
pop ecx
jmp 0x403a2f
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.0040a6ad
pop ebx
pop ecx
jmp 0x403524
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406842
push ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406859
push ebx
call fcn.00430341
add esp, 4
pop ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x406872
push ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x406882
push ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430341
add esp, 4
pop ebx
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4068bc
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4068b8
imul eax, dword [ebx]
jmp 0x4068ad
mov ecx, eax
test ecx, ecx
je 0x4068e4
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430341
add esp, 4
pop ebx
call fcn.00430341
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4068c2
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40690a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x406906
imul eax, dword [ebx]
jmp 0x4068fb
mov ecx, eax
test ecx, ecx
je 0x406961
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406928
push ebx
call fcn.00430341
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40693c
push ebx
call fcn.00430341
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406950
push ebx
call fcn.00430341
add esp, 4
pop ebx
call fcn.00430341
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406910
call fcn.00430341
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x406979
push ebx
call fcn.00430341
add esp, 4
mov esp, ebp
pop ebp
ret