Function at 0x402254
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.004135e5
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.004135e5
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.004135e5
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x47f18e
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.004135e5
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x47f137
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.004135e5
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x47f137
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 [0x4a243c]
call fcn.004011bb
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x404f37
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x404f34
cmp dword [ebp - 4], 1
jne 0x402391
mov eax, str.ntdll.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402388
push ebx
call fcn.004135df
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4023e8
cmp dword [ebp - 4], 2
jne 0x4023ba
mov eax, 0x47f179
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4023b1
push ebx
call fcn.004135df
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4023e8
cmp dword [ebp - 4], 3
jne 0x4023e3
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4023da
push ebx
call fcn.004135df
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4023e8
jmp 0x404f37
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.00405082
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.004060d4
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402436
push ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x402446
push ebx
call fcn.004135df
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40245a
push ebx
call fcn.004135df
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.004061e9
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x47f135
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.0040115f
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x402491
push ebx
call fcn.004135df
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 5
call fcn.004135f7
cmp dword [ebp - 0x44], esp
je 0x4024bb
push 6
call fcn.004135f1
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4024cb
push ebx
call fcn.004135df
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4024de
mov eax, 0x47f128
push eax
push 1
mov ebx, 0x4153f0
call fcn.004135eb
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x402508
push ebx
call fcn.004135df
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00406290
mov dword [ebp - 0x1c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40252b
mov eax, 0x47f128
push eax
push 1
mov ebx, 0x4153d0
call fcn.004135eb
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004062b4
test eax, eax
je 0x402574
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x402574
mov eax, 1
jmp 0x402576
xor eax, eax
test eax, eax
je 0x404f2d
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.00406633
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.004135f7
cmp dword [ebp - 0x54], esp
je 0x402606
push 6
call fcn.004135f1
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.00406656
push 8
call fcn.004135e5
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x47f137
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.0040676b
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004135df
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 0x40273a
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.00401f59
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.00401f59
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.00406656
pop eax
pop ebx
pop ecx
jmp 0x402676
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00406cb3
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402768
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402764
imul eax, dword [ebx]
jmp 0x402759
mov ecx, eax
test ecx, ecx
je 0x402790
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004135df
add esp, 4
pop ebx
call fcn.004135df
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40276e
call fcn.004135df
add esp, 4
mov eax, 0x47f137
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040797b
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 0x404f11
cmp dword [ebp - 4], 1
jne 0x4028a1
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x40280c
mov eax, 0x47f128
push eax
push 2
mov ebx, 0x413e30
call fcn.004135eb
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x40288f
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x40286b
mov eax, 0x47f128
push eax
push 2
mov ebx, 0x413e30
call fcn.004135eb
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x40288f
xor eax, eax
jmp 0x402894
mov eax, 1
test eax, eax
je 0x4028a1
jmp 0x404f09
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.004135e5
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x47f137
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.00408312
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.004135df
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x402934
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x402934
mov eax, 1
jmp 0x402936
xor eax, eax
test eax, eax
je 0x404f09
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x402983
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x402996
push ebx
call fcn.004135df
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 0x4029e2
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x402a16
and eax, 0xff
jmp 0x402a61
cmp ecx, 0x80000201
jne 0x402a21
cwde
jmp 0x402a61
cmp ecx, 0x80000301
je 0x402a61
cmp ecx, 0x80000401
je 0x402a61
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402a51
cmp ecx, 0x80000601
je 0x402a56
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x402a5c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x4a2440]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x402a9d
mov ebx, dword [0x4a2440]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x402a9d
mov eax, 1
jmp 0x402a9f
xor eax, eax
test eax, eax
je 0x403117
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x402af0
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x402af0
mov eax, 1
jmp 0x402af2
xor eax, eax
test eax, eax
je 0x403112
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x402c8e
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 0x402b4f
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x402b83
and eax, 0xff
jmp 0x402bce
cmp ecx, 0x80000201
jne 0x402b8e
cwde
jmp 0x402bce
cmp ecx, 0x80000301
je 0x402bce
cmp ecx, 0x80000401
je 0x402bce
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402bbe
cmp ecx, 0x80000601
je 0x402bc3
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x402bc9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x402c1a
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x402c76
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x402d6a
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x402cf6
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x402d52
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x403112
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00401f59
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 0x402dd2
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x402e12
and eax, 0xff
jmp 0x402e5d
cmp ecx, 0x80000201
jne 0x402e1d
cwde
jmp 0x402e5d
cmp ecx, 0x80000301
je 0x402e5d
cmp ecx, 0x80000401
je 0x402e5d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402e4d
cmp ecx, 0x80000601
je 0x402e52
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x402e58
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
push eax
push dword [ebp - 0x38]
call fcn.00401f59
mov dword [ebp - 0x38], eax
push 8
call fcn.004135e5
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x47f137
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.00408312
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40303b
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 0x402efc
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x402f30
and eax, 0xff
jmp 0x402f7b
cmp ecx, 0x80000201
jne 0x402f3b
cwde
jmp 0x402f7b
cmp ecx, 0x80000301
je 0x402f7b
cmp ecx, 0x80000401
je 0x402f7b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402f6b
cmp ecx, 0x80000601
je 0x402f70
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x402f76
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x402fc7
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403023
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x403112
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4030a3
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x4030ff
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
jmp 0x404f09
mov ebx, dword [0x4a2440]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x404857
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]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x4031ab
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 6
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x4031ab
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 8
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x4031ab
mov eax, 1
jmp 0x4031ad
xor eax, eax
test eax, eax
je 0x403420
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403349
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 0x40320a
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x40323e
and eax, 0xff
jmp 0x403289
cmp ecx, 0x80000201
jne 0x403249
cwde
jmp 0x403289
cmp ecx, 0x80000301
je 0x403289
cmp ecx, 0x80000401
je 0x403289
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403279
cmp ecx, 0x80000601
je 0x40327e
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403284
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4032d5
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403331
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x403420
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4033b1
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x40340d
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x40348a
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 7
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40348a
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40348a
mov eax, 1
jmp 0x40348c
xor eax, eax
test eax, eax
je 0x4038c5
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4034da
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4034da
xor eax, eax
jmp 0x4034df
mov eax, 1
test eax, eax
je 0x4035a2
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x40352e
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x40358a
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403736
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 0x4035f7
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x40362b
and eax, 0xff
jmp 0x403676
cmp ecx, 0x80000201
jne 0x403636
cwde
jmp 0x403676
cmp ecx, 0x80000301
je 0x403676
cmp ecx, 0x80000401
je 0x403676
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403666
cmp ecx, 0x80000601
je 0x40366b
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403671
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4036c2
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x40371e
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4038c5
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 0x40378b
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x4037bf
and eax, 0xff
jmp 0x40380a
cmp ecx, 0x80000201
jne 0x4037ca
cwde
jmp 0x40380a
cmp ecx, 0x80000301
je 0x40380a
cmp ecx, 0x80000401
je 0x40380a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4037fa
cmp ecx, 0x80000601
je 0x4037ff
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403805
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x403856
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x4038b2
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40392f
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x40392f
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40392f
mov eax, 1
jmp 0x403931
xor eax, eax
test eax, eax
je 0x403d6a
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40397f
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40397f
xor eax, eax
jmp 0x403984
mov eax, 1
test eax, eax
je 0x403a47
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4039d3
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403a2f
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403bdb
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 0x403a9c
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x403ad0
and eax, 0xff
jmp 0x403b1b
cmp ecx, 0x80000201
jne 0x403adb
cwde
jmp 0x403b1b
cmp ecx, 0x80000301
je 0x403b1b
cmp ecx, 0x80000401
je 0x403b1b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403b0b
cmp ecx, 0x80000601
je 0x403b10
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403b16
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x403b67
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403bc3
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403d6a
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 0x403c30
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x403c64
and eax, 0xff
jmp 0x403caf
cmp ecx, 0x80000201
jne 0x403c6f
cwde
jmp 0x403caf
cmp ecx, 0x80000301
je 0x403caf
cmp ecx, 0x80000401
je 0x403caf
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403c9f
cmp ecx, 0x80000601
je 0x403ca4
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403caa
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x403cfb
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403d57
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x403dd4
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x403dd4
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xe
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x403dd4
mov eax, 1
jmp 0x403dd6
xor eax, eax
test eax, eax
je 0x4042de
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 0x403e12
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x403e46
and eax, 0xff
jmp 0x403e91
cmp ecx, 0x80000201
jne 0x403e51
cwde
jmp 0x403e91
cmp ecx, 0x80000301
je 0x403e91
cmp ecx, 0x80000401
je 0x403e91
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403e81
cmp ecx, 0x80000601
je 0x403e86
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x403e8c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x403edc
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x403edc
xor eax, eax
jmp 0x403ee1
mov eax, 1
test eax, eax
je 0x403fa4
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x403f30
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x403f8c
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404138
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 0x403ff9
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x40402d
and eax, 0xff
jmp 0x404078
cmp ecx, 0x80000201
jne 0x404038
cwde
jmp 0x404078
cmp ecx, 0x80000301
je 0x404078
cmp ecx, 0x80000401
je 0x404078
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404068
cmp ecx, 0x80000601
je 0x40406d
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x404073
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4040c4
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404120
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4042cc
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 0x40418d
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x4041c1
and eax, 0xff
jmp 0x40420c
cmp ecx, 0x80000201
jne 0x4041cc
cwde
jmp 0x40420c
cmp ecx, 0x80000301
je 0x40420c
cmp ecx, 0x80000401
je 0x40420c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4041fc
cmp ecx, 0x80000601
je 0x404201
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x404207
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404258
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x4042b4
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
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]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x404348
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x404348
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xe
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404348
mov eax, 1
jmp 0x40434a
xor eax, eax
test eax, eax
je 0x404852
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 0x404386
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x4043ba
and eax, 0xff
jmp 0x404405
cmp ecx, 0x80000201
jne 0x4043c5
cwde
jmp 0x404405
cmp ecx, 0x80000301
je 0x404405
cmp ecx, 0x80000401
je 0x404405
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4043f5
cmp ecx, 0x80000601
je 0x4043fa
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x404400
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404450
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404450
xor eax, eax
jmp 0x404455
mov eax, 1
test eax, eax
je 0x404518
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4044a4
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404500
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4046ac
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 0x40456d
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x4045a1
and eax, 0xff
jmp 0x4045ec
cmp ecx, 0x80000201
jne 0x4045ac
cwde
jmp 0x4045ec
cmp ecx, 0x80000301
je 0x4045ec
cmp ecx, 0x80000401
je 0x4045ec
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4045dc
cmp ecx, 0x80000601
je 0x4045e1
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4045e7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404638
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404694
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404840
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 0x404701
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x404735
and eax, 0xff
jmp 0x404780
cmp ecx, 0x80000201
jne 0x404740
cwde
jmp 0x404780
cmp ecx, 0x80000301
je 0x404780
cmp ecx, 0x80000401
je 0x404780
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404770
cmp ecx, 0x80000601
je 0x404775
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40477b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x4047cc
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404828
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x404bf8
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 0x4048a3
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x4048d7
and eax, 0xff
jmp 0x404922
cmp ecx, 0x80000201
jne 0x4048e2
cwde
jmp 0x404922
cmp ecx, 0x80000301
je 0x404922
cmp ecx, 0x80000401
je 0x404922
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x404912
cmp ecx, 0x80000601
je 0x404917
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x4c]
jmp 0x40491d
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00401cf8
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x404940
cmp dword [ebp - 0x38], 0xa
jge 0x404940
mov eax, 1
jmp 0x404942
xor eax, eax
test eax, eax
je 0x404bf3
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00401f59
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x38]
dec eax
pop ebx
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x404bf3
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404b1c
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 0x4049dd
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x404a11
and eax, 0xff
jmp 0x404a5c
cmp ecx, 0x80000201
jne 0x404a1c
cwde
jmp 0x404a5c
cmp ecx, 0x80000301
je 0x404a5c
cmp ecx, 0x80000401
je 0x404a5c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404a4c
cmp ecx, 0x80000601
je 0x404a51
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x404a57
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404aa8
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404b04
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404bf3
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404b84
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404be0
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
jmp 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x404c41
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x404c41
mov eax, 1
jmp 0x404c43
xor eax, eax
test eax, eax
je 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x404c91
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x404c91
xor eax, eax
jmp 0x404c96
mov eax, 1
test eax, eax
je 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404e32
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 0x404cf3
mov eax, 0x47f137
push eax
push 3
mov ebx, 0x414b00
call fcn.004135eb
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 0x404d27
and eax, 0xff
jmp 0x404d72
cmp ecx, 0x80000201
jne 0x404d32
cwde
jmp 0x404d72
cmp ecx, 0x80000301
je 0x404d72
cmp ecx, 0x80000401
je 0x404d72
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404d62
cmp ecx, 0x80000601
je 0x404d67
push 2
call fcn.004135f1
add esp, 4
fld dword [ebp - 0x50]
jmp 0x404d6d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401cf8
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404dbe
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404e1a
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404f09
push 0x4a243c
push 4
mov eax, 2
call fcn.004135d9
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x4a243c]
mov dword [ebp - 0x40], ebx
call fcn.004011d4
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 0x404e9a
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.004135fd
add esp, 8
mov dword [0x4a243c], 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.004135e5
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 0x404ef6
push eax
mov ebx, eax
call fcn.004010f4
inc eax
push eax
call fcn.004135e5
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 0x404f09
pop eax
pop ebx
pop ecx
jmp 0x4027b5
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.004083f4
pop ebx
pop ecx
jmp 0x40235a
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404f47
push ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x404f5e
push ebx
call fcn.004135df
add esp, 4
pop ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x404f77
push ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x404f87
push ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004135df
add esp, 4
pop ebx
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x404fc1
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404fbd
imul eax, dword [ebx]
jmp 0x404fb2
mov ecx, eax
test ecx, ecx
je 0x404fe9
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004135df
add esp, 4
pop ebx
call fcn.004135df
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x404fc7
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40500f
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40500b
imul eax, dword [ebx]
jmp 0x405000
mov ecx, eax
test ecx, ecx
je 0x405066
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40502d
push ebx
call fcn.004135df
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405041
push ebx
call fcn.004135df
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405055
push ebx
call fcn.004135df
add esp, 4
pop ebx
call fcn.004135df
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405015
call fcn.004135df
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40507e
push ebx
call fcn.004135df
add esp, 4
mov esp, ebp
pop ebp
ret