Function at 0x403127
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.0045cfba
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.0045cfba
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.0045cfba
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5b73f5
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.0045cfba
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x5b73aa
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.0045cfba
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x5b73aa
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 [0xec3094]
call fcn.00401e6e
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x40653b
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x406538
cmp dword [ebp - 4], 1
jne 0x403264
mov eax, 0x5b73d4
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40325b
push ebx
call fcn.0045cfae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4032bb
cmp dword [ebp - 4], 2
jne 0x40328d
mov eax, 0x5b73de
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x403284
push ebx
call fcn.0045cfae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4032bb
cmp dword [ebp - 4], 3
jne 0x4032b6
mov eax, 0x5b73e9
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4032ad
push ebx
call fcn.0045cfae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4032bb
jmp 0x40653b
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.00406723
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.0040ef04
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x403309
push ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x403319
push ebx
call fcn.0045cfae
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40332d
push ebx
call fcn.0045cfae
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.0040f109
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x5b73f3
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.004030cb
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x403364
push ebx
call fcn.0045cfae
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x15
call fcn.0045cfc6
cmp dword [ebp - 0x44], esp
je 0x403398
push 0x267
push 0x4074fe8
push 6
call fcn.0045cfc0
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4033a8
push ebx
call fcn.0045cfae
add esp, 4
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4033bb
mov eax, 0x5b73a9
push eax
push 1
mov ebx, 0x45f5e0
call fcn.0045cfb4
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4033e5
push ebx
call fcn.0045cfae
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040f1ba
mov dword [ebp - 0x1c], eax
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x403408
mov eax, 0x5b73a9
push eax
push 1
mov ebx, 0x45f420
call fcn.0045cfb4
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.0040f1de
test eax, eax
je 0x403451
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x403451
mov eax, 1
jmp 0x403456
mov eax, 0
test eax, eax
je 0x406531
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.0040f57f
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, 0x16
call fcn.0045cfc6
cmp dword [ebp - 0x54], esp
je 0x4034f0
push 0x433
push 0x4074fe8
push 6
call fcn.0045cfc0
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.0040f5a2
push 8
call fcn.0045cfba
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5b73aa
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.0040f723
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0045cfae
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 0x4036bd
mov ebx, dword [ebp - 0x28]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403595
push 0x51a
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4035b2
push 0x51a
push 0x4074fe8
push 1
call fcn.0045cfc0
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.00402c99
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403602
push 0x54c
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40361f
push 0x54c
push 0x4074fe8
push 1
call fcn.0045cfc0
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.00402c99
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40366f
push 0x54c
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40368c
push 0x54c
push 0x4074fe8
push 1
call fcn.0045cfc0
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.0040f5a2
pop eax
pop ebx
pop ecx
jmp 0x403560
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0040fd08
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4036eb
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4036e7
imul eax, dword [ebx]
jmp 0x4036dc
mov ecx, eax
test ecx, ecx
je 0x403713
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
call fcn.0045cfae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4036f1
call fcn.0045cfae
add esp, 4
mov eax, 0x5b73aa
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00410c29
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 0x406515
cmp dword [ebp - 4], 1
jne 0x40388a
mov ebx, dword [ebp - 0x30]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403777
push 0x6bd
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403794
push 0x6bd
push 0x4074fe8
push 1
call fcn.0045cfc0
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 SysStringLen
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x4037c2
mov eax, 0x5b73a9
push eax
push 2
mov ebx, 0x45d8f0
call fcn.0045cfb4
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x403878
mov ebx, dword [ebp - 0x30]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403809
push 0x70c
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403826
push 0x70c
push 0x4074fe8
push 1
call fcn.0045cfc0
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 SysStringLen
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x403854
mov eax, 0x5b73a9
push eax
push 2
mov ebx, 0x45d8f0
call fcn.0045cfb4
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x403878
xor eax, eax
jmp 0x40387d
mov eax, 1
test eax, eax
je 0x40388a
jmp 0x40650d
mov ebx, dword [ebp - 0x30]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4038b1
push 0x7b8
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4038ce
push 0x7b8
push 0x4074fe8
push 1
call fcn.0045cfc0
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.0045cfba
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x5b73aa
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.0041183f
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0045cfae
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x403968
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0
cmp eax, ecx
jl 0x403950
push 0x7f2
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x403968
mov eax, 1
jmp 0x40396d
mov eax, 0
test eax, eax
je 0x40650d
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4039a5
push 0x81d
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4039c2
push 0x81d
push 0x4074fe8
push 1
call fcn.0045cfc0
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 0x4039ed
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x403a00
push ebx
call fcn.0045cfae
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 0x403a4c
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x403a80
and eax, 0xff
jmp 0x403ad5
cmp ecx, 0x80000201
jne 0x403a8b
cwde
jmp 0x403ad5
cmp ecx, 0x80000301
je 0x403ad5
cmp ecx, 0x80000401
je 0x403ad5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403ac5
cmp ecx, 0x80000601
je 0x403aca
push 0x8a5
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403ad0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0xec3098]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x403b11
mov ebx, dword [0xec3098]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x403b11
mov eax, 1
jmp 0x403b16
mov eax, 0
test eax, eax
je 0x404257
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 9
cmp eax, ecx
jl 0x403b46
push 0xcc3
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x403b97
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xa
cmp eax, ecx
jl 0x403b7f
push 0xcec
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x403b97
mov eax, 1
jmp 0x403b9c
mov eax, 0
test eax, eax
je 0x404252
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x403bcc
push 0xd38
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403d5a
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 0x403c11
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x403c45
and eax, 0xff
jmp 0x403c9a
cmp ecx, 0x80000201
jne 0x403c50
cwde
jmp 0x403c9a
cmp ecx, 0x80000301
je 0x403c9a
cmp ecx, 0x80000401
je 0x403c9a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403c8a
cmp ecx, 0x80000601
je 0x403c8f
push 0xd84
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403c95
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x403ce6
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x403d42
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x403d82
push 0xdf4
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x403e4e
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x403dda
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x403e36
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x403e76
push 0xe69
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x404252
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00402c99
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 0x403ece
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x403f0e
and eax, 0xff
jmp 0x403f63
cmp ecx, 0x80000201
jne 0x403f19
cwde
jmp 0x403f63
cmp ecx, 0x80000301
je 0x403f63
cmp ecx, 0x80000401
je 0x403f63
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403f53
cmp ecx, 0x80000601
je 0x403f58
push 0xf03
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403f5e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
push eax
push dword [ebp - 0x38]
call fcn.00402c99
mov dword [ebp - 0x38], eax
push 8
call fcn.0045cfba
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5b73aa
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.0041183f
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0
cmp eax, ecx
jl 0x403fd5
push 0xfa7
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404163
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 0x40401a
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x40404e
and eax, 0xff
jmp 0x4040a3
cmp ecx, 0x80000201
jne 0x404059
cwde
jmp 0x4040a3
cmp ecx, 0x80000301
je 0x4040a3
cmp ecx, 0x80000401
je 0x4040a3
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404093
cmp ecx, 0x80000601
je 0x404098
push 0xff3
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40409e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4040ef
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x40414b
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0
cmp eax, ecx
jl 0x40418b
push 0x1063
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404252
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4041e3
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x40423f
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
jmp 0x40650d
mov ebx, dword [0xec3098]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x405d2c
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.0040143e
mov eax, 5
cmp eax, ecx
jl 0x4042a9
push 0x11a7
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x404333
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 6
cmp eax, ecx
jl 0x4042e2
push 0x11d0
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x404333
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 8
cmp eax, ecx
jl 0x40431b
push 0x11f9
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x404333
mov eax, 1
jmp 0x404338
mov eax, 0
test eax, eax
je 0x4045e5
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xc
cmp eax, ecx
jl 0x404368
push 0x134b
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4044f6
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 0x4043ad
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x4043e1
and eax, 0xff
jmp 0x404436
cmp ecx, 0x80000201
jne 0x4043ec
cwde
jmp 0x404436
cmp ecx, 0x80000301
je 0x404436
cmp ecx, 0x80000401
je 0x404436
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404426
cmp ecx, 0x80000601
je 0x40442b
push 0x1397
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404431
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404482
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x4044de
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xc
cmp eax, ecx
jl 0x40451e
push 0x1407
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4045e5
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404576
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x4045d2
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 5
cmp eax, ecx
jl 0x40460d
push 0x14c8
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x404697
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 7
cmp eax, ecx
jl 0x404646
push 0x14f1
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x404697
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x40467f
push 0x151a
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404697
mov eax, 1
jmp 0x40469c
mov eax, 0
test eax, eax
je 0x404b49
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x12
cmp eax, ecx
jl 0x4046cc
push 0x194d
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40471a
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x404705
push 0x1976
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40471a
xor eax, eax
jmp 0x40471f
mov eax, 1
test eax, eax
je 0x4047e2
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x40476e
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x4047ca
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x12
cmp eax, ecx
jl 0x40480a
push 0x19e8
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404998
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 0x40484f
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x404883
and eax, 0xff
jmp 0x4048d8
cmp ecx, 0x80000201
jne 0x40488e
cwde
jmp 0x4048d8
cmp ecx, 0x80000301
je 0x4048d8
cmp ecx, 0x80000401
je 0x4048d8
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4048c8
cmp ecx, 0x80000601
je 0x4048cd
push 0x1a34
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4048d3
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404924
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x404980
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x4049c0
push 0x1aa4
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404b49
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 0x404a05
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x404a39
and eax, 0xff
jmp 0x404a8e
cmp ecx, 0x80000201
jne 0x404a44
cwde
jmp 0x404a8e
cmp ecx, 0x80000301
je 0x404a8e
cmp ecx, 0x80000401
je 0x404a8e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404a7e
cmp ecx, 0x80000601
je 0x404a83
push 0x1af0
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404a89
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404ada
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x404b36
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 5
cmp eax, ecx
jl 0x404b71
push 0x1bc1
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x404bfb
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 9
cmp eax, ecx
jl 0x404baa
push 0x1bea
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x404bfb
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x404be3
push 0x1c13
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404bfb
mov eax, 1
jmp 0x404c00
mov eax, 0
test eax, eax
je 0x4050ad
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x12
cmp eax, ecx
jl 0x404c30
push 0x204c
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404c7e
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x404c69
push 0x2075
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404c7e
xor eax, eax
jmp 0x404c83
mov eax, 1
test eax, eax
je 0x404d46
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404cd2
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x404d2e
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x12
cmp eax, ecx
jl 0x404d6e
push 0x20e7
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404efc
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 0x404db3
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x404de7
and eax, 0xff
jmp 0x404e3c
cmp ecx, 0x80000201
jne 0x404df2
cwde
jmp 0x404e3c
cmp ecx, 0x80000301
je 0x404e3c
cmp ecx, 0x80000401
je 0x404e3c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404e2c
cmp ecx, 0x80000601
je 0x404e31
push 0x2133
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404e37
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x404e88
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x404ee4
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x404f24
push 0x21a3
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4050ad
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 0x404f69
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x404f9d
and eax, 0xff
jmp 0x404ff2
cmp ecx, 0x80000201
jne 0x404fa8
cwde
jmp 0x404ff2
cmp ecx, 0x80000301
je 0x404ff2
cmp ecx, 0x80000401
je 0x404ff2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404fe2
cmp ecx, 0x80000601
je 0x404fe7
push 0x21ef
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404fed
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x40503e
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x40509a
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 5
cmp eax, ecx
jl 0x4050d5
push 0x22d1
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x40515f
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xa
cmp eax, ecx
jl 0x40510e
push 0x22fa
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40515f
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xe
cmp eax, ecx
jl 0x405147
push 0x2323
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40515f
mov eax, 1
jmp 0x405164
mov eax, 0
test eax, eax
je 0x4056ea
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 0x4051a0
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x4051d4
and eax, 0xff
jmp 0x405229
cmp ecx, 0x80000201
jne 0x4051df
cwde
jmp 0x405229
cmp ecx, 0x80000301
je 0x405229
cmp ecx, 0x80000401
je 0x405229
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405219
cmp ecx, 0x80000601
je 0x40521e
push 0x27b3
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405224
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x405256
push 0x2805
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4052a4
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x18
cmp eax, ecx
jl 0x40528f
push 0x282e
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4052a4
xor eax, eax
jmp 0x4052a9
mov eax, 1
test eax, eax
je 0x40536c
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4052f8
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x405354
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x405394
push 0x28a0
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405522
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 0x4053d9
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x40540d
and eax, 0xff
jmp 0x405462
cmp ecx, 0x80000201
jne 0x405418
cwde
jmp 0x405462
cmp ecx, 0x80000301
je 0x405462
cmp ecx, 0x80000401
je 0x405462
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405452
cmp ecx, 0x80000601
je 0x405457
push 0x28ec
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40545d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4054ae
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x40550a
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x18
cmp eax, ecx
jl 0x40554a
push 0x295c
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4056d8
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 0x40558f
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x4055c3
and eax, 0xff
jmp 0x405618
cmp ecx, 0x80000201
jne 0x4055ce
cwde
jmp 0x405618
cmp ecx, 0x80000301
je 0x405618
cmp ecx, 0x80000401
je 0x405618
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405608
cmp ecx, 0x80000601
je 0x40560d
push 0x29a8
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405613
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x405664
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x4056c0
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
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.0040143e
mov eax, 5
cmp eax, ecx
jl 0x405712
push 0x2a99
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40579c
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 9
cmp eax, ecx
jl 0x40574b
push 0x2ac2
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x40579c
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xe
cmp eax, ecx
jl 0x405784
push 0x2aeb
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40579c
mov eax, 1
jmp 0x4057a1
mov eax, 0
test eax, eax
je 0x405d27
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 0x4057dd
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x405811
and eax, 0xff
jmp 0x405866
cmp ecx, 0x80000201
jne 0x40581c
cwde
jmp 0x405866
cmp ecx, 0x80000301
je 0x405866
cmp ecx, 0x80000401
je 0x405866
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405856
cmp ecx, 0x80000601
je 0x40585b
push 0x2f72
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405861
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x405893
push 0x2fc4
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4058e1
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x18
cmp eax, ecx
jl 0x4058cc
push 0x2fed
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4058e1
xor eax, eax
jmp 0x4058e6
mov eax, 1
test eax, eax
je 0x4059a9
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x405935
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x405991
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x15
cmp eax, ecx
jl 0x4059d1
push 0x305f
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405b5f
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 0x405a16
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x405a4a
and eax, 0xff
jmp 0x405a9f
cmp ecx, 0x80000201
jne 0x405a55
cwde
jmp 0x405a9f
cmp ecx, 0x80000301
je 0x405a9f
cmp ecx, 0x80000401
je 0x405a9f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405a8f
cmp ecx, 0x80000601
je 0x405a94
push 0x30ab
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405a9a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x405aeb
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x405b47
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0x18
cmp eax, ecx
jl 0x405b87
push 0x311b
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405d15
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 0x405bcc
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x405c00
and eax, 0xff
jmp 0x405c55
cmp ecx, 0x80000201
jne 0x405c0b
cwde
jmp 0x405c55
cmp ecx, 0x80000301
je 0x405c55
cmp ecx, 0x80000401
je 0x405c55
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405c45
cmp ecx, 0x80000601
je 0x405c4a
push 0x3167
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405c50
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x405ca1
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x405cfd
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 5
cmp eax, ecx
jl 0x405d54
push 0x324a
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x40615f
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 0x405d90
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x405dc4
and eax, 0xff
jmp 0x405e19
cmp ecx, 0x80000201
jne 0x405dcf
cwde
jmp 0x405e19
cmp ecx, 0x80000301
je 0x405e19
cmp ecx, 0x80000401
je 0x405e19
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x405e09
cmp ecx, 0x80000601
je 0x405e0e
push 0x36ab
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x405e14
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.004029b8
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x405e37
cmp dword [ebp - 0x38], 0xa
jge 0x405e37
mov eax, 1
jmp 0x405e3c
mov eax, 0
test eax, eax
je 0x40615a
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00402c99
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x405e87
push 0x37b2
push 0x4074fe8
push 4
call fcn.0045cfc0
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x405ea4
push 0x37b2
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x40615a
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xa
cmp eax, ecx
jl 0x405edd
push 0x37fe
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40606b
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 0x405f22
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x405f56
and eax, 0xff
jmp 0x405fab
cmp ecx, 0x80000201
jne 0x405f61
cwde
jmp 0x405fab
cmp ecx, 0x80000301
je 0x405fab
cmp ecx, 0x80000401
je 0x405fab
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405f9b
cmp ecx, 0x80000601
je 0x405fa0
push 0x384a
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405fa6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x405ff7
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x406053
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xa
cmp eax, ecx
jl 0x406093
push 0x38ba
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40615a
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4060eb
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x406147
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
jmp 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 5
cmp eax, ecx
jl 0x406187
push 0x39a8
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x4061d8
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xa
cmp eax, ecx
jl 0x4061c0
push 0x39d1
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x4061d8
mov eax, 1
jmp 0x4061dd
mov eax, 0
test eax, eax
je 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x40620d
push 0x3dcd
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x40625b
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xb
cmp eax, ecx
jl 0x406246
push 0x3df6
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x40625b
xor eax, eax
jmp 0x406260
mov eax, 1
test eax, eax
je 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xc
cmp eax, ecx
jl 0x406290
push 0x3e42
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40641e
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 0x4062d5
mov eax, 0x5b73aa
push eax
push 3
mov ebx, 0x45eb40
call fcn.0045cfb4
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 0x406309
and eax, 0xff
jmp 0x40635e
cmp ecx, 0x80000201
jne 0x406314
cwde
jmp 0x40635e
cmp ecx, 0x80000301
je 0x40635e
cmp ecx, 0x80000401
je 0x40635e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40634e
cmp ecx, 0x80000601
je 0x406353
push 0x3e8e
push 0x4074fe8
push 2
call fcn.0045cfc0
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x406359
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004029b8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x4063aa
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x406406
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
mov ebx, dword [ebp - 0x34]
call fcn.0040143e
mov eax, 0xc
cmp eax, ecx
jl 0x406446
push 0x3efe
push 0x4074fe8
push 1
call fcn.0045cfc0
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40650d
push 0xec3094
push 4
mov eax, 2
call fcn.0045cfa8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0xec3094]
mov dword [ebp - 0x40], ebx
call fcn.0040143e
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 0x40649e
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.0045cfcc
add esp, 8
mov dword [0xec3094], 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.0045cfba
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 0x4064fa
push eax
mov ebx, eax
call fcn.00403060
inc eax
push eax
call fcn.0045cfba
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 0x40650d
pop eax
pop ebx
pop ecx
jmp 0x403738
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.00411939
pop ebx
pop ecx
jmp 0x40322d
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40654b
push ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406562
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40657b
push ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40658b
push ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4065c5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4065c1
imul eax, dword [ebx]
jmp 0x4065b6
mov ecx, eax
test ecx, ecx
je 0x4065ed
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
call fcn.0045cfae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4065cb
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x406613
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40660f
imul eax, dword [ebx]
jmp 0x406604
mov ecx, eax
test ecx, ecx
je 0x40666a
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406631
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406645
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406659
push ebx
call fcn.0045cfae
add esp, 4
pop ebx
call fcn.0045cfae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406619
call fcn.0045cfae
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x406682
push ebx
call fcn.0045cfae
add esp, 4
mov esp, ebp
pop ebp
ret