Function at 0x50d380
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.0051b5d7
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.0051b5d7
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.0051b5d7
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x632579
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.0051b5d7
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x631846
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.0051b5d7
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x631846
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 [0x12ee150]
call fcn.0040163b
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x510c2f
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x510c2c
cmp dword [ebp - 4], 1
jne 0x50d4bd
mov eax, 0x63255a
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50d4b4
push ebx
call fcn.0051b5d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50d514
cmp dword [ebp - 4], 2
jne 0x50d4e6
mov eax, 0x632564
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50d4dd
push ebx
call fcn.0051b5d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50d514
cmp dword [ebp - 4], 3
jne 0x50d50f
mov eax, 0x63256f
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50d506
push ebx
call fcn.0051b5d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50d514
jmp 0x510c2f
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.00510d7a
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.00510d98
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x50d562
push ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50d572
push ebx
call fcn.0051b5d1
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x50d586
push ebx
call fcn.0051b5d1
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.00510eb7
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x631844
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50d5bd
push ebx
call fcn.0051b5d1
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0xdd
call fcn.0051b5e9
cmp dword [ebp - 0x44], esp
je 0x50d5f1
push 0x267
push 0x40ad967
push 6
call fcn.0051b5dd
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x50d601
push ebx
call fcn.0051b5d1
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x50d614
mov eax, 0x63184e
push eax
push 1
mov ebx, 0x51e9c0
call fcn.0051b5e3
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x50d63e
push ebx
call fcn.0051b5d1
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00510f68
mov dword [ebp - 0x1c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x50d661
mov eax, 0x63184e
push eax
push 1
mov ebx, 0x51e910
call fcn.0051b5e3
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.00510f8c
test eax, eax
je 0x50d6aa
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x50d6aa
mov eax, 1
jmp 0x50d6af
mov eax, 0
test eax, eax
je 0x510c25
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.00511393
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, 0xde
call fcn.0051b5e9
cmp dword [ebp - 0x54], esp
je 0x50d749
push 0x433
push 0x40ad967
push 6
call fcn.0051b5dd
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.005113b6
push 8
call fcn.0051b5d7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x631846
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.00512a14
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0051b5d1
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 0x50d916
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50d7ee
push 0x51a
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50d80b
push 0x51a
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.00511379
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50d85b
push 0x54b
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50d878
push 0x54b
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.00511379
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50d8c8
push 0x54b
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50d8e5
push 0x54b
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.005113b6
pop eax
pop ebx
pop ecx
jmp 0x50d7b9
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0051379c
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x50d944
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x50d940
imul eax, dword [ebx]
jmp 0x50d935
mov ecx, eax
test ecx, ecx
je 0x50d96c
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
call fcn.0051b5d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x50d94a
call fcn.0051b5d1
add esp, 4
mov eax, 0x631846
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.005141eb
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 0x510be7
cmp dword [ebp - 4], 1
jne 0x50dae3
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50d9d0
push 0x6bb
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50d9ed
push 0x6bb
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x50da1b
mov eax, 0x63184e
push eax
push 2
mov ebx, 0x51c1f0
call fcn.0051b5e3
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x50dad1
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50da62
push 0x70a
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50da7f
push 0x70a
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x50daad
mov eax, 0x63184e
push eax
push 2
mov ebx, 0x51c1f0
call fcn.0051b5e3
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x50dad1
xor eax, eax
jmp 0x50dad6
mov eax, 1
test eax, eax
je 0x50dae3
jmp 0x510bdf
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50db0a
push 0x7b6
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50db27
push 0x7b6
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.0051b5d7
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x631846
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.00514cb0
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0051b5d1
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x50dbc1
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50dba9
push 0x7f0
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x50dbc1
mov eax, 1
jmp 0x50dbc6
mov eax, 0
test eax, eax
je 0x510bdf
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50dbfe
push 0x81b
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50dc1b
push 0x81b
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x50dc46
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x50dc59
push ebx
call fcn.0051b5d1
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 0x50dca5
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50dcd9
and eax, 0xff
jmp 0x50dd2e
cmp ecx, 0x80000201
jne 0x50dce4
cwde
jmp 0x50dd2e
cmp ecx, 0x80000301
je 0x50dd2e
cmp ecx, 0x80000401
je 0x50dd2e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50dd1e
cmp ecx, 0x80000601
je 0x50dd23
push 0x8a3
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50dd29
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x12ee124]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x50dd6a
mov ebx, dword [0x12ee124]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x50dd6a
mov eax, 1
jmp 0x50dd6f
mov eax, 0
test eax, eax
je 0x50e4b0
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x50dd9f
push 0xcc1
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x50ddf0
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x50ddd8
push 0xcea
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x50ddf0
mov eax, 1
jmp 0x50ddf5
mov eax, 0
test eax, eax
je 0x50e4ab
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50de25
push 0xd36
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50dfb3
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 0x50de6a
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50de9e
and eax, 0xff
jmp 0x50def3
cmp ecx, 0x80000201
jne 0x50dea9
cwde
jmp 0x50def3
cmp ecx, 0x80000301
je 0x50def3
cmp ecx, 0x80000401
je 0x50def3
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50dee3
cmp ecx, 0x80000601
je 0x50dee8
push 0xd82
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50deee
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50df3f
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50df9b
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50dfdb
push 0xdf2
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x50e0a7
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50e033
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50e08f
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50e0cf
push 0xe67
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x50e4ab
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00511379
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 0x50e127
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50e167
and eax, 0xff
jmp 0x50e1bc
cmp ecx, 0x80000201
jne 0x50e172
cwde
jmp 0x50e1bc
cmp ecx, 0x80000301
je 0x50e1bc
cmp ecx, 0x80000401
je 0x50e1bc
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50e1ac
cmp ecx, 0x80000601
je 0x50e1b1
push 0xf00
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50e1b7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
push eax
push dword [ebp - 0x38]
call fcn.00511379
mov dword [ebp - 0x38], eax
push 8
call fcn.0051b5d7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x631846
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.00514cb0
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50e22e
push 0xfa3
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50e3bc
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 0x50e273
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50e2a7
and eax, 0xff
jmp 0x50e2fc
cmp ecx, 0x80000201
jne 0x50e2b2
cwde
jmp 0x50e2fc
cmp ecx, 0x80000301
je 0x50e2fc
cmp ecx, 0x80000401
je 0x50e2fc
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50e2ec
cmp ecx, 0x80000601
je 0x50e2f1
push 0xfef
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50e2f7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50e348
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50e3a4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50e3e4
push 0x105f
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x50e4ab
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50e43c
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50e498
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
jmp 0x510bdf
mov ebx, dword [0x12ee124]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x5103fe
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 [0x12ee124]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0xa
jne 0x50e511
mov ebx, dword [0x12ee124]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x50e511
mov eax, 1
jmp 0x50e516
mov eax, 0
test eax, eax
je 0x50e953
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50e546
push 0x16b1
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x50e597
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x1f
cmp eax, ecx
jl 0x50e57f
push 0x16da
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xba
jne 0x50e597
mov eax, 1
jmp 0x50e59c
mov eax, 0
test eax, eax
je 0x50e71c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x27
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50e5d8
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50e60c
and eax, 0xff
jmp 0x50e661
cmp ecx, 0x80000201
jne 0x50e617
cwde
jmp 0x50e661
cmp ecx, 0x80000301
je 0x50e661
cmp ecx, 0x80000401
je 0x50e661
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50e651
cmp ecx, 0x80000601
je 0x50e656
push 0x1727
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50e65c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50e6ad
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50e709
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50e744
push 0x17b4
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x50e7ce
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x50e77d
push 0x17dd
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x50e7ce
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50e7b6
push 0x1806
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
jne 0x50e7ce
mov eax, 1
jmp 0x50e7d3
mov eax, 0
test eax, eax
je 0x50e953
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 0x50e80f
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50e843
and eax, 0xff
jmp 0x50e898
cmp ecx, 0x80000201
jne 0x50e84e
cwde
jmp 0x50e898
cmp ecx, 0x80000301
je 0x50e898
cmp ecx, 0x80000401
je 0x50e898
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50e888
cmp ecx, 0x80000601
je 0x50e88d
push 0x199e
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50e893
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50e8e4
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50e940
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50e97b
push 0x1a52
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x50ea05
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 6
cmp eax, ecx
jl 0x50e9b4
push 0x1a7b
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x50ea05
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 8
cmp eax, ecx
jl 0x50e9ed
push 0x1aa4
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x50ea05
mov eax, 1
jmp 0x50ea0a
mov eax, 0
test eax, eax
je 0x50ecb7
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x50ea3a
push 0x1bf6
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50ebc8
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 0x50ea7f
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50eab3
and eax, 0xff
jmp 0x50eb08
cmp ecx, 0x80000201
jne 0x50eabe
cwde
jmp 0x50eb08
cmp ecx, 0x80000301
je 0x50eb08
cmp ecx, 0x80000401
je 0x50eb08
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50eaf8
cmp ecx, 0x80000601
je 0x50eafd
push 0x1c42
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50eb03
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50eb54
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50ebb0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x50ebf0
push 0x1cb2
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x50ecb7
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50ec48
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50eca4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50ecdf
push 0x1d73
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x50ed69
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 7
cmp eax, ecx
jl 0x50ed18
push 0x1d9c
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x50ed69
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50ed51
push 0x1dc5
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x50ed69
mov eax, 1
jmp 0x50ed6e
mov eax, 0
test eax, eax
je 0x50f21b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x50ed9e
push 0x21f8
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x50edec
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50edd7
push 0x2221
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x50edec
xor eax, eax
jmp 0x50edf1
mov eax, 1
test eax, eax
je 0x50eeb4
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50ee40
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50ee9c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x50eedc
push 0x2293
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50f06a
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 0x50ef21
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50ef55
and eax, 0xff
jmp 0x50efaa
cmp ecx, 0x80000201
jne 0x50ef60
cwde
jmp 0x50efaa
cmp ecx, 0x80000301
je 0x50efaa
cmp ecx, 0x80000401
je 0x50efaa
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50ef9a
cmp ecx, 0x80000601
je 0x50ef9f
push 0x22df
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50efa5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50eff6
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50f052
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50f092
push 0x234f
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50f21b
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 0x50f0d7
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50f10b
and eax, 0xff
jmp 0x50f160
cmp ecx, 0x80000201
jne 0x50f116
cwde
jmp 0x50f160
cmp ecx, 0x80000301
je 0x50f160
cmp ecx, 0x80000401
je 0x50f160
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f150
cmp ecx, 0x80000601
je 0x50f155
push 0x239b
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f15b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50f1ac
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50f208
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50f243
push 0x246c
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x50f2cd
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x50f27c
push 0x2495
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x50f2cd
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50f2b5
push 0x24be
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x50f2cd
mov eax, 1
jmp 0x50f2d2
mov eax, 0
test eax, eax
je 0x50f77f
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x50f302
push 0x28f7
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x50f350
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50f33b
push 0x2920
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x50f350
xor eax, eax
jmp 0x50f355
mov eax, 1
test eax, eax
je 0x50f418
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50f3a4
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50f400
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x50f440
push 0x2992
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50f5ce
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 0x50f485
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50f4b9
and eax, 0xff
jmp 0x50f50e
cmp ecx, 0x80000201
jne 0x50f4c4
cwde
jmp 0x50f50e
cmp ecx, 0x80000301
je 0x50f50e
cmp ecx, 0x80000401
je 0x50f50e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f4fe
cmp ecx, 0x80000601
je 0x50f503
push 0x29de
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f509
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50f55a
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50f5b6
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50f5f6
push 0x2a4e
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50f77f
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 0x50f63b
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50f66f
and eax, 0xff
jmp 0x50f6c4
cmp ecx, 0x80000201
jne 0x50f67a
cwde
jmp 0x50f6c4
cmp ecx, 0x80000301
je 0x50f6c4
cmp ecx, 0x80000401
je 0x50f6c4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f6b4
cmp ecx, 0x80000601
je 0x50f6b9
push 0x2a9a
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f6bf
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50f710
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50f76c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50f7a7
push 0x2b7c
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x50f831
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x50f7e0
push 0x2ba5
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x50f831
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x50f819
push 0x2bce
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x50f831
mov eax, 1
jmp 0x50f836
mov eax, 0
test eax, eax
je 0x50fdbc
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 0x50f872
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50f8a6
and eax, 0xff
jmp 0x50f8fb
cmp ecx, 0x80000201
jne 0x50f8b1
cwde
jmp 0x50f8fb
cmp ecx, 0x80000301
je 0x50f8fb
cmp ecx, 0x80000401
je 0x50f8fb
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f8eb
cmp ecx, 0x80000601
je 0x50f8f0
push 0x305e
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f8f6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50f928
push 0x30b0
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x50f976
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x50f961
push 0x30d9
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x50f976
xor eax, eax
jmp 0x50f97b
mov eax, 1
test eax, eax
je 0x50fa3e
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50f9ca
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50fa26
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50fa66
push 0x314b
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50fbf4
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 0x50faab
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50fadf
and eax, 0xff
jmp 0x50fb34
cmp ecx, 0x80000201
jne 0x50faea
cwde
jmp 0x50fb34
cmp ecx, 0x80000301
je 0x50fb34
cmp ecx, 0x80000401
je 0x50fb34
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50fb24
cmp ecx, 0x80000601
je 0x50fb29
push 0x3197
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50fb2f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50fb80
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50fbdc
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x50fc1c
push 0x3207
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50fdaa
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 0x50fc61
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50fc95
and eax, 0xff
jmp 0x50fcea
cmp ecx, 0x80000201
jne 0x50fca0
cwde
jmp 0x50fcea
cmp ecx, 0x80000301
je 0x50fcea
cmp ecx, 0x80000401
je 0x50fcea
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50fcda
cmp ecx, 0x80000601
je 0x50fcdf
push 0x3253
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50fce5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x50fd36
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x50fd92
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
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.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50fde4
push 0x3344
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x50fe6e
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x50fe1d
push 0x336d
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x50fe6e
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x50fe56
push 0x3396
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x50fe6e
mov eax, 1
jmp 0x50fe73
mov eax, 0
test eax, eax
je 0x5103f9
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 0x50feaf
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x50fee3
and eax, 0xff
jmp 0x50ff38
cmp ecx, 0x80000201
jne 0x50feee
cwde
jmp 0x50ff38
cmp ecx, 0x80000301
je 0x50ff38
cmp ecx, 0x80000401
je 0x50ff38
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50ff28
cmp ecx, 0x80000601
je 0x50ff2d
push 0x381d
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50ff33
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x50ff65
push 0x386f
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x50ffb3
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x50ff9e
push 0x3898
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x50ffb3
xor eax, eax
jmp 0x50ffb8
mov eax, 1
test eax, eax
je 0x51007b
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x510007
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510063
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x5100a3
push 0x390a
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x510231
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 0x5100e8
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x51011c
and eax, 0xff
jmp 0x510171
cmp ecx, 0x80000201
jne 0x510127
cwde
jmp 0x510171
cmp ecx, 0x80000301
je 0x510171
cmp ecx, 0x80000401
je 0x510171
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510161
cmp ecx, 0x80000601
je 0x510166
push 0x3956
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x51016c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x5101bd
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510219
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x510259
push 0x39c6
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x5103e7
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 0x51029e
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x5102d2
and eax, 0xff
jmp 0x510327
cmp ecx, 0x80000201
jne 0x5102dd
cwde
jmp 0x510327
cmp ecx, 0x80000301
je 0x510327
cmp ecx, 0x80000401
je 0x510327
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510317
cmp ecx, 0x80000601
je 0x51031c
push 0x3a12
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510322
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x510373
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x5103cf
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x510426
push 0x3af5
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x510831
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 0x510462
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x510496
and eax, 0xff
jmp 0x5104eb
cmp ecx, 0x80000201
jne 0x5104a1
cwde
jmp 0x5104eb
cmp ecx, 0x80000301
je 0x5104eb
cmp ecx, 0x80000401
je 0x5104eb
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x5104db
cmp ecx, 0x80000601
je 0x5104e0
push 0x3f56
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x5104e6
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.0040127a
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x510509
cmp dword [ebp - 0x38], 0xa
jge 0x510509
mov eax, 1
jmp 0x51050e
mov eax, 0
test eax, eax
je 0x51082c
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00511379
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x510559
push 0x405d
push 0x40ad967
push 4
call fcn.0051b5dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x510576
push 0x405d
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x51082c
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x5105af
push 0x40a9
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x51073d
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 0x5105f4
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x510628
and eax, 0xff
jmp 0x51067d
cmp ecx, 0x80000201
jne 0x510633
cwde
jmp 0x51067d
cmp ecx, 0x80000301
je 0x51067d
cmp ecx, 0x80000401
je 0x51067d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x51066d
cmp ecx, 0x80000601
je 0x510672
push 0x40f5
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510678
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x5106c9
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510725
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x510765
push 0x4165
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x51082c
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x5107bd
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510819
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
jmp 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x510859
push 0x4253
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x5108aa
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x510892
push 0x427c
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x5108aa
mov eax, 1
jmp 0x5108af
mov eax, 0
test eax, eax
je 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x5108df
push 0x4678
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x51092d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x510918
push 0x46a1
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x51092d
xor eax, eax
jmp 0x510932
mov eax, 1
test eax, eax
je 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x510962
push 0x46ed
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x510af0
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 0x5109a7
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d550
call fcn.0051b5e3
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 0x5109db
and eax, 0xff
jmp 0x510a30
cmp ecx, 0x80000201
jne 0x5109e6
cwde
jmp 0x510a30
cmp ecx, 0x80000301
je 0x510a30
cmp ecx, 0x80000401
je 0x510a30
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510a20
cmp ecx, 0x80000601
je 0x510a25
push 0x4739
push 0x40ad967
push 2
call fcn.0051b5dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510a2b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x510a7c
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510ad8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x510b18
push 0x47a9
push 0x40ad967
push 1
call fcn.0051b5dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x510bdf
push 0x12ee150
push 4
mov eax, 2
call fcn.0051b5cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12ee150]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x510b70
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.0051b5ef
add esp, 8
mov dword [0x12ee150], 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.0051b5d7
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 0x510bcc
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b5d7
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 0x510bdf
pop eax
pop ebx
pop ecx
jmp 0x50d991
add esp, 0xc
mov dword [ebp - 0x3c], esp
push 0x8000
push 0
push dword [ebp - 0x24]
push 0xffffffff
mov eax, 0xdf
call fcn.0051b5e9
cmp dword [ebp - 0x3c], esp
je 0x510c25
push 0x48ac
push 0x40ad967
push 6
call fcn.0051b5dd
add esp, 0xc
pop ebx
pop ecx
jmp 0x50d486
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x510c3f
push ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x510c56
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x510c6f
push ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x510c7f
push ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x510cb9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x510cb5
imul eax, dword [ebx]
jmp 0x510caa
mov ecx, eax
test ecx, ecx
je 0x510ce1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
call fcn.0051b5d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x510cbf
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x510d07
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x510d03
imul eax, dword [ebx]
jmp 0x510cf8
mov ecx, eax
test ecx, ecx
je 0x510d5e
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x510d25
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x510d39
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x510d4d
push ebx
call fcn.0051b5d1
add esp, 4
pop ebx
call fcn.0051b5d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x510d0d
call fcn.0051b5d1
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x510d76
push ebx
call fcn.0051b5d1
add esp, 4
mov esp, ebp
pop ebp
ret