Function at 0x406d8b
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.0041fde7
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.0041fde7
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.0041fde7
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x62bad4
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.0041fde7
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x563e7d
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.0041fde7
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x563e7d
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 [0x9a1994]
call fcn.00401edd
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x40a19f
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40a19c
cmp dword [ebp - 4], 1
jne 0x406ec8
mov eax, 0x62ba07
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ebf
push ebx
call fcn.0041fded
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406f1f
cmp dword [ebp - 4], 2
jne 0x406ef1
mov eax, 0x62babf
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ee8
push ebx
call fcn.0041fded
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406f1f
cmp dword [ebp - 4], 3
jne 0x406f1a
mov eax, 0x62baca
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406f11
push ebx
call fcn.0041fded
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406f1f
jmp 0x40a19f
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.00405ebc
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.0040a2ea
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x406f6d
push ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406f7d
push ebx
call fcn.0041fded
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x406f91
push ebx
call fcn.0041fded
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.0040a42e
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x62b917
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.00401a18
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406fc8
push ebx
call fcn.0041fded
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x1d
call fcn.0041fdff
cmp dword [ebp - 0x44], esp
je 0x406ffc
push 0x267
push 0x403f4d7
push 6
call fcn.0041fdf9
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40700c
push ebx
call fcn.0041fded
add esp, 4
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40701f
mov eax, 0x563e7c
push eax
push 1
mov ebx, 0x422060
call fcn.0041fde1
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x407049
push ebx
call fcn.0041fded
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040a4df
mov dword [ebp - 0x1c], eax
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40706c
mov eax, 0x563e7c
push eax
push 1
mov ebx, 0x422000
call fcn.0041fde1
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.0040a503
test eax, eax
je 0x4070b5
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x4070b5
mov eax, 1
jmp 0x4070ba
mov eax, 0
test eax, eax
je 0x40a195
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.0040a9c2
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, 0x1e
call fcn.0041fdff
cmp dword [ebp - 0x54], esp
je 0x407154
push 0x433
push 0x403f4d7
push 6
call fcn.0041fdf9
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.0040a9e5
push 8
call fcn.0041fde7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x563e7d
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.0040ac6e
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041fded
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 0x407321
mov ebx, dword [ebp - 0x28]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4071f9
push 0x51a
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407216
push 0x51a
push 0x403f4d7
push 1
call fcn.0041fdf9
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.004069c4
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x407266
push 0x54c
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407283
push 0x54c
push 0x403f4d7
push 1
call fcn.0041fdf9
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.004069c4
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4072d3
push 0x54c
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4072f0
push 0x54c
push 0x403f4d7
push 1
call fcn.0041fdf9
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.0040a9e5
pop eax
pop ebx
pop ecx
jmp 0x4071c4
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0040b4bb
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40734f
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40734b
imul eax, dword [ebx]
jmp 0x407340
mov ecx, eax
test ecx, ecx
je 0x407377
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041fded
add esp, 4
pop ebx
call fcn.0041fded
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407355
call fcn.0041fded
add esp, 4
mov eax, 0x563e7d
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040c6ac
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 0x40a179
cmp dword [ebp - 4], 1
jne 0x4074ee
mov ebx, dword [ebp - 0x30]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4073db
push 0x6bd
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4073f8
push 0x6bd
push 0x403f4d7
push 1
call fcn.0041fdf9
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 0x407426
mov eax, 0x563e7c
push eax
push 2
mov ebx, 0x4207c0
call fcn.0041fde1
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x4074dc
mov ebx, dword [ebp - 0x30]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40746d
push 0x70c
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40748a
push 0x70c
push 0x403f4d7
push 1
call fcn.0041fdf9
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 0x4074b8
mov eax, 0x563e7c
push eax
push 2
mov ebx, 0x4207c0
call fcn.0041fde1
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x4074dc
xor eax, eax
jmp 0x4074e1
mov eax, 1
test eax, eax
je 0x4074ee
jmp 0x40a171
mov ebx, dword [ebp - 0x30]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x407515
push 0x7b8
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407532
push 0x7b8
push 0x403f4d7
push 1
call fcn.0041fdf9
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.0041fde7
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x563e7d
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.0040d2c2
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0041fded
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x4075cc
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0
cmp eax, ecx
jl 0x4075b4
push 0x7f2
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x4075cc
mov eax, 1
jmp 0x4075d1
mov eax, 0
test eax, eax
je 0x40a171
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x407609
push 0x81d
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407626
push 0x81d
push 0x403f4d7
push 1
call fcn.0041fdf9
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 0x407651
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x407664
push ebx
call fcn.0041fded
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 0x4076b0
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x4076e4
and eax, 0xff
jmp 0x407739
cmp ecx, 0x80000201
jne 0x4076ef
cwde
jmp 0x407739
cmp ecx, 0x80000301
je 0x407739
cmp ecx, 0x80000401
je 0x407739
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407729
cmp ecx, 0x80000601
je 0x40772e
push 0x8a5
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407734
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x9a1978]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x407775
mov ebx, dword [0x9a1978]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x407775
mov eax, 1
jmp 0x40777a
mov eax, 0
test eax, eax
je 0x407ebb
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 9
cmp eax, ecx
jl 0x4077aa
push 0xcc3
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x4077fb
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xa
cmp eax, ecx
jl 0x4077e3
push 0xcec
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x4077fb
mov eax, 1
jmp 0x407800
mov eax, 0
test eax, eax
je 0x407eb6
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x407830
push 0xd38
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4079be
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 0x407875
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x4078a9
and eax, 0xff
jmp 0x4078fe
cmp ecx, 0x80000201
jne 0x4078b4
cwde
jmp 0x4078fe
cmp ecx, 0x80000301
je 0x4078fe
cmp ecx, 0x80000401
je 0x4078fe
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4078ee
cmp ecx, 0x80000601
je 0x4078f3
push 0xd84
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4078f9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x40794a
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x4079a6
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x4079e6
push 0xdf4
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x407ab2
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x407a3e
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x407a9a
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x407ada
push 0xe69
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x407eb6
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.004069c4
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 0x407b32
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x407b72
and eax, 0xff
jmp 0x407bc7
cmp ecx, 0x80000201
jne 0x407b7d
cwde
jmp 0x407bc7
cmp ecx, 0x80000301
je 0x407bc7
cmp ecx, 0x80000401
je 0x407bc7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407bb7
cmp ecx, 0x80000601
je 0x407bbc
push 0xf03
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407bc2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
push eax
push dword [ebp - 0x38]
call fcn.004069c4
mov dword [ebp - 0x38], eax
push 8
call fcn.0041fde7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x563e7d
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.0040d2c2
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0
cmp eax, ecx
jl 0x407c39
push 0xfa7
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407dc7
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 0x407c7e
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x407cb2
and eax, 0xff
jmp 0x407d07
cmp ecx, 0x80000201
jne 0x407cbd
cwde
jmp 0x407d07
cmp ecx, 0x80000301
je 0x407d07
cmp ecx, 0x80000401
je 0x407d07
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407cf7
cmp ecx, 0x80000601
je 0x407cfc
push 0xff3
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407d02
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x407d53
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x407daf
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0
cmp eax, ecx
jl 0x407def
push 0x1063
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x407eb6
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x407e47
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x407ea3
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
jmp 0x40a171
mov ebx, dword [0x9a1978]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x409990
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.00401060
mov eax, 5
cmp eax, ecx
jl 0x407f0d
push 0x11a7
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x407f97
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 6
cmp eax, ecx
jl 0x407f46
push 0x11d0
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x407f97
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 8
cmp eax, ecx
jl 0x407f7f
push 0x11f9
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x407f97
mov eax, 1
jmp 0x407f9c
mov eax, 0
test eax, eax
je 0x408249
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xc
cmp eax, ecx
jl 0x407fcc
push 0x134b
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40815a
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 0x408011
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x408045
and eax, 0xff
jmp 0x40809a
cmp ecx, 0x80000201
jne 0x408050
cwde
jmp 0x40809a
cmp ecx, 0x80000301
je 0x40809a
cmp ecx, 0x80000401
je 0x40809a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40808a
cmp ecx, 0x80000601
je 0x40808f
push 0x1397
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408095
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x4080e6
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408142
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xc
cmp eax, ecx
jl 0x408182
push 0x1407
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x408249
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x4081da
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408236
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 5
cmp eax, ecx
jl 0x408271
push 0x14c8
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x4082fb
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 7
cmp eax, ecx
jl 0x4082aa
push 0x14f1
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x4082fb
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x4082e3
push 0x151a
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4082fb
mov eax, 1
jmp 0x408300
mov eax, 0
test eax, eax
je 0x4087ad
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x12
cmp eax, ecx
jl 0x408330
push 0x194d
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40837e
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x408369
push 0x1976
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40837e
xor eax, eax
jmp 0x408383
mov eax, 1
test eax, eax
je 0x408446
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x4083d2
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x40842e
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x12
cmp eax, ecx
jl 0x40846e
push 0x19e8
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4085fc
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 0x4084b3
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x4084e7
and eax, 0xff
jmp 0x40853c
cmp ecx, 0x80000201
jne 0x4084f2
cwde
jmp 0x40853c
cmp ecx, 0x80000301
je 0x40853c
cmp ecx, 0x80000401
je 0x40853c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40852c
cmp ecx, 0x80000601
je 0x408531
push 0x1a34
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408537
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x408588
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x4085e4
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x408624
push 0x1aa4
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4087ad
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 0x408669
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x40869d
and eax, 0xff
jmp 0x4086f2
cmp ecx, 0x80000201
jne 0x4086a8
cwde
jmp 0x4086f2
cmp ecx, 0x80000301
je 0x4086f2
cmp ecx, 0x80000401
je 0x4086f2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4086e2
cmp ecx, 0x80000601
je 0x4086e7
push 0x1af0
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4086ed
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x40873e
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x40879a
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 5
cmp eax, ecx
jl 0x4087d5
push 0x1bc1
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40885f
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 9
cmp eax, ecx
jl 0x40880e
push 0x1bea
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x40885f
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x408847
push 0x1c13
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40885f
mov eax, 1
jmp 0x408864
mov eax, 0
test eax, eax
je 0x408d11
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x12
cmp eax, ecx
jl 0x408894
push 0x204c
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4088e2
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x4088cd
push 0x2075
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4088e2
xor eax, eax
jmp 0x4088e7
mov eax, 1
test eax, eax
je 0x4089aa
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x408936
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408992
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x12
cmp eax, ecx
jl 0x4089d2
push 0x20e7
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408b60
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 0x408a17
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x408a4b
and eax, 0xff
jmp 0x408aa0
cmp ecx, 0x80000201
jne 0x408a56
cwde
jmp 0x408aa0
cmp ecx, 0x80000301
je 0x408aa0
cmp ecx, 0x80000401
je 0x408aa0
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408a90
cmp ecx, 0x80000601
je 0x408a95
push 0x2133
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408a9b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x408aec
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408b48
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x408b88
push 0x21a3
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408d11
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 0x408bcd
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x408c01
and eax, 0xff
jmp 0x408c56
cmp ecx, 0x80000201
jne 0x408c0c
cwde
jmp 0x408c56
cmp ecx, 0x80000301
je 0x408c56
cmp ecx, 0x80000401
je 0x408c56
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408c46
cmp ecx, 0x80000601
je 0x408c4b
push 0x21ef
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408c51
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x408ca2
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408cfe
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 5
cmp eax, ecx
jl 0x408d39
push 0x22d1
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x408dc3
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xa
cmp eax, ecx
jl 0x408d72
push 0x22fa
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x408dc3
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xe
cmp eax, ecx
jl 0x408dab
push 0x2323
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x408dc3
mov eax, 1
jmp 0x408dc8
mov eax, 0
test eax, eax
je 0x40934e
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 0x408e04
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x408e38
and eax, 0xff
jmp 0x408e8d
cmp ecx, 0x80000201
jne 0x408e43
cwde
jmp 0x408e8d
cmp ecx, 0x80000301
je 0x408e8d
cmp ecx, 0x80000401
je 0x408e8d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408e7d
cmp ecx, 0x80000601
je 0x408e82
push 0x27b3
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408e88
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x408eba
push 0x2805
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x408f08
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x18
cmp eax, ecx
jl 0x408ef3
push 0x282e
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x408f08
xor eax, eax
jmp 0x408f0d
mov eax, 1
test eax, eax
je 0x408fd0
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x408f5c
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x408fb8
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x408ff8
push 0x28a0
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409186
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 0x40903d
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409071
and eax, 0xff
jmp 0x4090c6
cmp ecx, 0x80000201
jne 0x40907c
cwde
jmp 0x4090c6
cmp ecx, 0x80000301
je 0x4090c6
cmp ecx, 0x80000401
je 0x4090c6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4090b6
cmp ecx, 0x80000601
je 0x4090bb
push 0x28ec
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4090c1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x409112
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x40916e
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x18
cmp eax, ecx
jl 0x4091ae
push 0x295c
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40933c
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 0x4091f3
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409227
and eax, 0xff
jmp 0x40927c
cmp ecx, 0x80000201
jne 0x409232
cwde
jmp 0x40927c
cmp ecx, 0x80000301
je 0x40927c
cmp ecx, 0x80000401
je 0x40927c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40926c
cmp ecx, 0x80000601
je 0x409271
push 0x29a8
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409277
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x4092c8
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x409324
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
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.00401060
mov eax, 5
cmp eax, ecx
jl 0x409376
push 0x2a99
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x409400
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 9
cmp eax, ecx
jl 0x4093af
push 0x2ac2
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x409400
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xe
cmp eax, ecx
jl 0x4093e8
push 0x2aeb
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x409400
mov eax, 1
jmp 0x409405
mov eax, 0
test eax, eax
je 0x40998b
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 0x409441
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409475
and eax, 0xff
jmp 0x4094ca
cmp ecx, 0x80000201
jne 0x409480
cwde
jmp 0x4094ca
cmp ecx, 0x80000301
je 0x4094ca
cmp ecx, 0x80000401
je 0x4094ca
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4094ba
cmp ecx, 0x80000601
je 0x4094bf
push 0x2f72
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4094c5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x4094f7
push 0x2fc4
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x409545
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x18
cmp eax, ecx
jl 0x409530
push 0x2fed
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x409545
xor eax, eax
jmp 0x40954a
mov eax, 1
test eax, eax
je 0x40960d
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x409599
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x4095f5
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x15
cmp eax, ecx
jl 0x409635
push 0x305f
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4097c3
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 0x40967a
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x4096ae
and eax, 0xff
jmp 0x409703
cmp ecx, 0x80000201
jne 0x4096b9
cwde
jmp 0x409703
cmp ecx, 0x80000301
je 0x409703
cmp ecx, 0x80000401
je 0x409703
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4096f3
cmp ecx, 0x80000601
je 0x4096f8
push 0x30ab
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4096fe
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x40974f
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x4097ab
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0x18
cmp eax, ecx
jl 0x4097eb
push 0x311b
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409979
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 0x409830
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409864
and eax, 0xff
jmp 0x4098b9
cmp ecx, 0x80000201
jne 0x40986f
cwde
jmp 0x4098b9
cmp ecx, 0x80000301
je 0x4098b9
cmp ecx, 0x80000401
je 0x4098b9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4098a9
cmp ecx, 0x80000601
je 0x4098ae
push 0x3167
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4098b4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x409905
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x409961
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 5
cmp eax, ecx
jl 0x4099b8
push 0x324a
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x409dc3
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 0x4099f4
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409a28
and eax, 0xff
jmp 0x409a7d
cmp ecx, 0x80000201
jne 0x409a33
cwde
jmp 0x409a7d
cmp ecx, 0x80000301
je 0x409a7d
cmp ecx, 0x80000401
je 0x409a7d
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x409a6d
cmp ecx, 0x80000601
je 0x409a72
push 0x36ab
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x409a78
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00401ef6
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x409a9b
cmp dword [ebp - 0x38], 0xa
jge 0x409a9b
mov eax, 1
jmp 0x409aa0
mov eax, 0
test eax, eax
je 0x409dbe
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.004069c4
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401060
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x409aeb
push 0x37b2
push 0x403f4d7
push 4
call fcn.0041fdf9
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409b08
push 0x37b2
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x409dbe
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xa
cmp eax, ecx
jl 0x409b41
push 0x37fe
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409ccf
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 0x409b86
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409bba
and eax, 0xff
jmp 0x409c0f
cmp ecx, 0x80000201
jne 0x409bc5
cwde
jmp 0x409c0f
cmp ecx, 0x80000301
je 0x409c0f
cmp ecx, 0x80000401
je 0x409c0f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409bff
cmp ecx, 0x80000601
je 0x409c04
push 0x384a
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409c0a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x409c5b
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x409cb7
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xa
cmp eax, ecx
jl 0x409cf7
push 0x38ba
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x409dbe
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x409d4f
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x409dab
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
jmp 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 5
cmp eax, ecx
jl 0x409deb
push 0x39a8
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x409e3c
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xa
cmp eax, ecx
jl 0x409e24
push 0x39d1
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x409e3c
mov eax, 1
jmp 0x409e41
mov eax, 0
test eax, eax
je 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x409e71
push 0x3dcd
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x409ebf
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xb
cmp eax, ecx
jl 0x409eaa
push 0x3df6
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x409ebf
xor eax, eax
jmp 0x409ec4
mov eax, 1
test eax, eax
je 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xc
cmp eax, ecx
jl 0x409ef4
push 0x3e42
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40a082
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 0x409f39
mov eax, 0x563e7d
push eax
push 3
mov ebx, 0x4217f0
call fcn.0041fde1
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 0x409f6d
and eax, 0xff
jmp 0x409fc2
cmp ecx, 0x80000201
jne 0x409f78
cwde
jmp 0x409fc2
cmp ecx, 0x80000301
je 0x409fc2
cmp ecx, 0x80000401
je 0x409fc2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409fb2
cmp ecx, 0x80000601
je 0x409fb7
push 0x3e8e
push 0x403f4d7
push 2
call fcn.0041fdf9
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409fbd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401ef6
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x40a00e
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x40a06a
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
mov ebx, dword [ebp - 0x34]
call fcn.00401060
mov eax, 0xc
cmp eax, ecx
jl 0x40a0aa
push 0x3efe
push 0x403f4d7
push 1
call fcn.0041fdf9
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40a171
push 0x9a1994
push 4
mov eax, 2
call fcn.0041fddb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x9a1994]
mov dword [ebp - 0x40], ebx
call fcn.00401060
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 0x40a102
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.0041fe05
add esp, 8
mov dword [0x9a1994], 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.0041fde7
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 0x40a15e
push eax
mov ebx, eax
call fcn.004019ad
inc eax
push eax
call fcn.0041fde7
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 0x40a171
pop eax
pop ebx
pop ecx
jmp 0x40739c
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.0040d3bc
pop ebx
pop ecx
jmp 0x406e91
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a1af
push ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a1c6
push ebx
call fcn.0041fded
add esp, 4
pop ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40a1df
push ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40a1ef
push ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041fded
add esp, 4
pop ebx
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a229
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a225
imul eax, dword [ebx]
jmp 0x40a21a
mov ecx, eax
test ecx, ecx
je 0x40a251
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041fded
add esp, 4
pop ebx
call fcn.0041fded
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a22f
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a277
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a273
imul eax, dword [ebx]
jmp 0x40a268
mov ecx, eax
test ecx, ecx
je 0x40a2ce
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a295
push ebx
call fcn.0041fded
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a2a9
push ebx
call fcn.0041fded
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a2bd
push ebx
call fcn.0041fded
add esp, 4
pop ebx
call fcn.0041fded
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a27d
call fcn.0041fded
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a2e6
push ebx
call fcn.0041fded
add esp, 4
mov esp, ebp
pop ebp
ret