Function at 0x404e6f
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.0041bdb1
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.0041bdb1
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.0041bdb1
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x493ced
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.0041bdb1
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x493c60
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.0041bdb1
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x493c60
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 [0x4b9908]
call fcn.00402b33
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x407f06
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x407f03
cmp dword [ebp - 4], 1
jne 0x404fac
mov eax, str.ntdll.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404fa3
push ebx
call fcn.0041bdab
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x405003
cmp dword [ebp - 4], 2
jne 0x404fd5
mov eax, 0x493cd8
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404fcc
push ebx
call fcn.0041bdab
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x405003
cmp dword [ebp - 4], 3
jne 0x404ffe
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404ff5
push ebx
call fcn.0041bdab
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x405003
jmp 0x407f06
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.00408051
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.0040806f
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x405051
push ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x405061
push ebx
call fcn.0041bdab
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x405075
push ebx
call fcn.0041bdab
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.00408184
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x493c56
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.004010e1
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4050ac
push ebx
call fcn.0041bdab
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 5
call fcn.0041bdc3
cmp dword [ebp - 0x44], esp
je 0x4050d6
push 6
call fcn.0041bdb7
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4050e6
push ebx
call fcn.0041bdab
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4050f9
mov eax, 0x493b7c
push eax
push 1
mov ebx, 0x41dc00
call fcn.0041bdbd
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x405123
push ebx
call fcn.0041bdab
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040822b
mov dword [ebp - 0x1c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x405146
mov eax, 0x493b7c
push eax
push 1
mov ebx, 0x41dbe0
call fcn.0041bdbd
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.0040824f
test eax, eax
je 0x40518f
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x40518f
mov eax, 1
jmp 0x405191
xor eax, eax
test eax, eax
je 0x407efc
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.00408584
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, 6
call fcn.0041bdc3
cmp dword [ebp - 0x54], esp
je 0x405221
push 6
call fcn.0041bdb7
add esp, 4
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.004085a7
push 8
call fcn.0041bdb1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x493c60
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.00403bdc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041bdab
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 0x4053b2
mov ebx, dword [ebp - 0x28]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4052bc
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4052cf
push 1
call fcn.0041bdb7
add esp, 4
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.0040285f
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x405315
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405328
push 1
call fcn.0041bdb7
add esp, 4
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.0040285f
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40536e
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405381
push 1
call fcn.0041bdb7
add esp, 4
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.004085a7
pop eax
pop ebx
pop ecx
jmp 0x405291
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.004087d9
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4053e0
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4053dc
imul eax, dword [ebx]
jmp 0x4053d1
mov ecx, eax
test ecx, ecx
je 0x405408
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
call fcn.0041bdab
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4053e6
call fcn.0041bdab
add esp, 4
mov eax, 0x493c60
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00409267
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 0x407ee0
cmp dword [ebp - 4], 1
jne 0x405557
mov ebx, dword [ebp - 0x30]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x405462
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405475
push 1
call fcn.0041bdb7
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push getpeername
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x4054a3
mov eax, 0x493b7c
push eax
push 2
mov ebx, 0x41c600
call fcn.0041bdbd
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x405545
mov ebx, dword [ebp - 0x30]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4054e0
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4054f3
push 1
call fcn.0041bdb7
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push getpeername
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x405521
mov eax, 0x493b7c
push eax
push 2
mov ebx, 0x41c600
call fcn.0041bdbd
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x405545
xor eax, eax
jmp 0x40554a
mov eax, 1
test eax, eax
je 0x405557
jmp 0x407ed8
mov ebx, dword [ebp - 0x30]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x405574
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405587
push 1
call fcn.0041bdb7
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.0041bdb1
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x493c60
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.00409c25
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0041bdab
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x405617
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0
cmp eax, ecx
jl 0x4055ff
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x405617
mov eax, 1
jmp 0x405619
xor eax, eax
test eax, eax
je 0x407ed8
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x405647
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40565a
push 1
call fcn.0041bdb7
add esp, 4
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 0x405685
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x405698
push ebx
call fcn.0041bdab
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 0x4056e4
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x405718
and eax, 0xff
jmp 0x405763
cmp ecx, 0x80000201
jne 0x405723
cwde
jmp 0x405763
cmp ecx, 0x80000301
je 0x405763
cmp ecx, 0x80000401
je 0x405763
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405753
cmp ecx, 0x80000601
je 0x405758
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40575e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x4b990c]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x40579f
mov ebx, dword [0x4b990c]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x40579f
mov eax, 1
jmp 0x4057a1
xor eax, eax
test eax, eax
je 0x405e7b
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 9
cmp eax, ecx
jl 0x4057c7
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x40580e
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xa
cmp eax, ecx
jl 0x4057f6
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x40580e
mov eax, 1
jmp 0x405810
xor eax, eax
test eax, eax
je 0x405e76
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x405836
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4059ba
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 0x40587b
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x4058af
and eax, 0xff
jmp 0x4058fa
cmp ecx, 0x80000201
jne 0x4058ba
cwde
jmp 0x4058fa
cmp ecx, 0x80000301
je 0x4058fa
cmp ecx, 0x80000401
je 0x4058fa
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4058ea
cmp ecx, 0x80000601
je 0x4058ef
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4058f5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x405946
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x4059a2
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x4059d8
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405aa4
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x405a30
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x405a8c
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x405ac2
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x405e76
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.0040285f
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 0x405b1a
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x405b5a
and eax, 0xff
jmp 0x405ba5
cmp ecx, 0x80000201
jne 0x405b65
cwde
jmp 0x405ba5
cmp ecx, 0x80000301
je 0x405ba5
cmp ecx, 0x80000401
je 0x405ba5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405b95
cmp ecx, 0x80000601
je 0x405b9a
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x405ba0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
push eax
push dword [ebp - 0x38]
call fcn.0040285f
mov dword [ebp - 0x38], eax
push 8
call fcn.0041bdb1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x493c60
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.00409c25
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0
cmp eax, ecx
jl 0x405c0d
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405d91
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 0x405c52
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x405c86
and eax, 0xff
jmp 0x405cd1
cmp ecx, 0x80000201
jne 0x405c91
cwde
jmp 0x405cd1
cmp ecx, 0x80000301
je 0x405cd1
cmp ecx, 0x80000401
je 0x405cd1
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405cc1
cmp ecx, 0x80000601
je 0x405cc6
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x405ccc
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x405d1d
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x405d79
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0
cmp eax, ecx
jl 0x405daf
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405e76
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x405e07
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x405e63
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
jmp 0x407ed8
mov ebx, dword [0x4b990c]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x407789
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.00401d26
mov eax, 5
cmp eax, ecx
jl 0x405ec3
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x405f39
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 6
cmp eax, ecx
jl 0x405ef2
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x405f39
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 8
cmp eax, ecx
jl 0x405f21
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x405f39
mov eax, 1
jmp 0x405f3b
xor eax, eax
test eax, eax
je 0x4061ca
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xc
cmp eax, ecx
jl 0x405f61
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4060e5
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 0x405fa6
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x405fda
and eax, 0xff
jmp 0x406025
cmp ecx, 0x80000201
jne 0x405fe5
cwde
jmp 0x406025
cmp ecx, 0x80000301
je 0x406025
cmp ecx, 0x80000401
je 0x406025
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406015
cmp ecx, 0x80000601
je 0x40601a
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406020
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406071
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x4060cd
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xc
cmp eax, ecx
jl 0x406103
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4061ca
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x40615b
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x4061b7
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 5
cmp eax, ecx
jl 0x4061e8
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x40625e
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 7
cmp eax, ecx
jl 0x406217
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40625e
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x406246
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40625e
mov eax, 1
jmp 0x406260
xor eax, eax
test eax, eax
je 0x4066d1
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x12
cmp eax, ecx
jl 0x406286
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4062ca
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x4062b5
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4062ca
xor eax, eax
jmp 0x4062cf
mov eax, 1
test eax, eax
je 0x406392
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x40631e
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x40637a
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x12
cmp eax, ecx
jl 0x4063b0
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406534
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 0x4063f5
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x406429
and eax, 0xff
jmp 0x406474
cmp ecx, 0x80000201
jne 0x406434
cwde
jmp 0x406474
cmp ecx, 0x80000301
je 0x406474
cmp ecx, 0x80000401
je 0x406474
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406464
cmp ecx, 0x80000601
je 0x406469
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40646f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x4064c0
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x40651c
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x406552
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4066d1
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 0x406597
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x4065cb
and eax, 0xff
jmp 0x406616
cmp ecx, 0x80000201
jne 0x4065d6
cwde
jmp 0x406616
cmp ecx, 0x80000301
je 0x406616
cmp ecx, 0x80000401
je 0x406616
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406606
cmp ecx, 0x80000601
je 0x40660b
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406611
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406662
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x4066be
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 5
cmp eax, ecx
jl 0x4066ef
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x406765
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 9
cmp eax, ecx
jl 0x40671e
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x406765
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x40674d
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x406765
mov eax, 1
jmp 0x406767
xor eax, eax
test eax, eax
je 0x406bd8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x12
cmp eax, ecx
jl 0x40678d
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4067d1
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x4067bc
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4067d1
xor eax, eax
jmp 0x4067d6
mov eax, 1
test eax, eax
je 0x406899
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406825
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x406881
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x12
cmp eax, ecx
jl 0x4068b7
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406a3b
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 0x4068fc
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x406930
and eax, 0xff
jmp 0x40697b
cmp ecx, 0x80000201
jne 0x40693b
cwde
jmp 0x40697b
cmp ecx, 0x80000301
je 0x40697b
cmp ecx, 0x80000401
je 0x40697b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40696b
cmp ecx, 0x80000601
je 0x406970
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406976
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x4069c7
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x406a23
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x406a59
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406bd8
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 0x406a9e
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x406ad2
and eax, 0xff
jmp 0x406b1d
cmp ecx, 0x80000201
jne 0x406add
cwde
jmp 0x406b1d
cmp ecx, 0x80000301
je 0x406b1d
cmp ecx, 0x80000401
je 0x406b1d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406b0d
cmp ecx, 0x80000601
je 0x406b12
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406b18
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406b69
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x406bc5
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 5
cmp eax, ecx
jl 0x406bf6
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x406c6c
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xa
cmp eax, ecx
jl 0x406c25
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x406c6c
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xe
cmp eax, ecx
jl 0x406c54
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x406c6c
mov eax, 1
jmp 0x406c6e
xor eax, eax
test eax, eax
je 0x4071ae
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 0x406caa
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x406cde
and eax, 0xff
jmp 0x406d29
cmp ecx, 0x80000201
jne 0x406ce9
cwde
jmp 0x406d29
cmp ecx, 0x80000301
je 0x406d29
cmp ecx, 0x80000401
je 0x406d29
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406d19
cmp ecx, 0x80000601
je 0x406d1e
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406d24
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x406d4c
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x406d90
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x18
cmp eax, ecx
jl 0x406d7b
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x406d90
xor eax, eax
jmp 0x406d95
mov eax, 1
test eax, eax
je 0x406e58
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406de4
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x406e40
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x406e76
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406ffa
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 0x406ebb
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x406eef
and eax, 0xff
jmp 0x406f3a
cmp ecx, 0x80000201
jne 0x406efa
cwde
jmp 0x406f3a
cmp ecx, 0x80000301
je 0x406f3a
cmp ecx, 0x80000401
je 0x406f3a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406f2a
cmp ecx, 0x80000601
je 0x406f2f
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x406f35
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x406f86
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x406fe2
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x18
cmp eax, ecx
jl 0x407018
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40719c
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 0x40705d
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x407091
and eax, 0xff
jmp 0x4070dc
cmp ecx, 0x80000201
jne 0x40709c
cwde
jmp 0x4070dc
cmp ecx, 0x80000301
je 0x4070dc
cmp ecx, 0x80000401
je 0x4070dc
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4070cc
cmp ecx, 0x80000601
je 0x4070d1
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4070d7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x407128
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407184
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
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.00401d26
mov eax, 5
cmp eax, ecx
jl 0x4071cc
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x407242
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 9
cmp eax, ecx
jl 0x4071fb
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x407242
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xe
cmp eax, ecx
jl 0x40722a
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x407242
mov eax, 1
jmp 0x407244
xor eax, eax
test eax, eax
je 0x407784
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 0x407280
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x4072b4
and eax, 0xff
jmp 0x4072ff
cmp ecx, 0x80000201
jne 0x4072bf
cwde
jmp 0x4072ff
cmp ecx, 0x80000301
je 0x4072ff
cmp ecx, 0x80000401
je 0x4072ff
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4072ef
cmp ecx, 0x80000601
je 0x4072f4
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4072fa
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x407322
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x407366
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x18
cmp eax, ecx
jl 0x407351
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x407366
xor eax, eax
jmp 0x40736b
mov eax, 1
test eax, eax
je 0x40742e
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x4073ba
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407416
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x15
cmp eax, ecx
jl 0x40744c
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4075d0
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 0x407491
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x4074c5
and eax, 0xff
jmp 0x407510
cmp ecx, 0x80000201
jne 0x4074d0
cwde
jmp 0x407510
cmp ecx, 0x80000301
je 0x407510
cmp ecx, 0x80000401
je 0x407510
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407500
cmp ecx, 0x80000601
je 0x407505
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40750b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x40755c
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x4075b8
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0x18
cmp eax, ecx
jl 0x4075ee
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407772
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 0x407633
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x407667
and eax, 0xff
jmp 0x4076b2
cmp ecx, 0x80000201
jne 0x407672
cwde
jmp 0x4076b2
cmp ecx, 0x80000301
je 0x4076b2
cmp ecx, 0x80000401
je 0x4076b2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4076a2
cmp ecx, 0x80000601
je 0x4076a7
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4076ad
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x4076fe
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x40775a
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 5
cmp eax, ecx
jl 0x4077a7
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x407b73
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 0x4077e3
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x407817
and eax, 0xff
jmp 0x407862
cmp ecx, 0x80000201
jne 0x407822
cwde
jmp 0x407862
cmp ecx, 0x80000301
je 0x407862
cmp ecx, 0x80000401
je 0x407862
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x407852
cmp ecx, 0x80000601
je 0x407857
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x4c]
jmp 0x40785d
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.0040113d
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x407880
cmp dword [ebp - 0x38], 0xa
jge 0x407880
mov eax, 1
jmp 0x407882
xor eax, eax
test eax, eax
je 0x407b6e
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.0040285f
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x4078c3
push 4
call fcn.0041bdb7
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4078d6
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x407b6e
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xa
cmp eax, ecx
jl 0x407905
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407a89
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 0x40794a
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x40797e
and eax, 0xff
jmp 0x4079c9
cmp ecx, 0x80000201
jne 0x407989
cwde
jmp 0x4079c9
cmp ecx, 0x80000301
je 0x4079c9
cmp ecx, 0x80000401
je 0x4079c9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4079b9
cmp ecx, 0x80000601
je 0x4079be
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4079c4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x407a15
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407a71
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xa
cmp eax, ecx
jl 0x407aa7
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x407b6e
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x407aff
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407b5b
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
jmp 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 5
cmp eax, ecx
jl 0x407b91
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x407bd8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xa
cmp eax, ecx
jl 0x407bc0
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x407bd8
mov eax, 1
jmp 0x407bda
xor eax, eax
test eax, eax
je 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x407c00
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x407c44
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xb
cmp eax, ecx
jl 0x407c2f
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x407c44
xor eax, eax
jmp 0x407c49
mov eax, 1
test eax, eax
je 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xc
cmp eax, ecx
jl 0x407c6f
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407df3
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 0x407cb4
mov eax, 0x493c60
push eax
push 3
mov ebx, 0x41d2d0
call fcn.0041bdbd
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 0x407ce8
and eax, 0xff
jmp 0x407d33
cmp ecx, 0x80000201
jne 0x407cf3
cwde
jmp 0x407d33
cmp ecx, 0x80000301
je 0x407d33
cmp ecx, 0x80000401
je 0x407d33
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407d23
cmp ecx, 0x80000601
je 0x407d28
push 2
call fcn.0041bdb7
add esp, 4
fld dword [ebp - 0x50]
jmp 0x407d2e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040113d
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x407d7f
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407ddb
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
mov ebx, dword [ebp - 0x34]
call fcn.00401d26
mov eax, 0xc
cmp eax, ecx
jl 0x407e11
push 1
call fcn.0041bdb7
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x407ed8
push 0x4b9908
push 4
mov eax, 2
call fcn.0041bda5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4b9908]
mov dword [ebp - 0x40], ebx
call fcn.00401d26
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 0x407e69
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.0041bddb
add esp, 8
mov dword [0x4b9908], 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.0041bdb1
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 0x407ec5
push eax
mov ebx, eax
call fcn.00401076
inc eax
push eax
call fcn.0041bdb1
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 0x407ed8
pop eax
pop ebx
pop ecx
jmp 0x40542d
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.00409d1f
pop ebx
pop ecx
jmp 0x404f75
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407f16
push ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f2d
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x407f46
push ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x407f56
push ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407f90
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407f8c
imul eax, dword [ebx]
jmp 0x407f81
mov ecx, eax
test ecx, ecx
je 0x407fb8
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
call fcn.0041bdab
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407f96
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407fde
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407fda
imul eax, dword [ebx]
jmp 0x407fcf
mov ecx, eax
test ecx, ecx
je 0x408035
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407ffc
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408010
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408024
push ebx
call fcn.0041bdab
add esp, 4
pop ebx
call fcn.0041bdab
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407fe4
call fcn.0041bdab
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40804d
push ebx
call fcn.0041bdab
add esp, 4
mov esp, ebp
pop ebp
ret