Function at 0x1000283e
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1003b79f
mov eax, dword fs:[0]
push eax
mov eax, 0x10cc
call fcn.10039a80
mov eax, dword [0x1004e00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
xor ebx, ebx
lea eax, [ebp - 0x1010]
push 0x1000
push ebx
push eax
mov dword [ebp - 0x10d8], ebx
call fcn.10022700
add esp, 0xc
lea eax, [ebp - 0x1010]
push ebx
push 0x200
push eax
push dword [edi + 0x78]
call dword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x10002e89
mov edx, str.PONG_n
lea esi, [ebp - 0x1010]
xor ecx, ecx
movzx eax, byte [edx + ecx]
cmp al, byte [esi + ecx]
jne 0x100028ce
inc ecx
cmp ecx, 6
jne 0x100028ba
jmp 0x10002e89
lea edx, [ebp - 0x1010]
lea ecx, [ebp - 0x1028]
call fcn.100016cb
and dword [ebp - 4], 0
mov esi, 0x10045a90
mov ecx, esi
mov byte [ebp - 0x1010], 0
call fcn.100010b1
push eax
push 0
push esi
lea ecx, [ebp - 0x1028]
call fcn.10006bd8
or esi, 0xffffffff
cmp eax, esi
je 0x1000293c
push esi
dec eax
lea ecx, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.100065dc
push eax
lea ecx, [ebp - 0x1028]
call fcn.10006619
push 0
push 1
lea ecx, [ebp - 0x1040]
call fcn.10006b0c
cmp dword [ebp - 0x1018], 6
jb 0x100029b6
and dword [ebp - 0x1030], 0
lea ecx, [ebp - 0x1040]
xor eax, eax
mov dword [ebp - 0x102c], 7
push str.ERROR_n
mov word [ebp - 0x1040], ax
call fcn.10006c7d
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1028]
mov eax, dword [ebp - 0x1018]
push esi
add eax, 0xfffffffa
mov dword [ebp - 0x10d8], 1
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.100065dc
push 3
pop ebx
lea ecx, [ebp - 0x1040]
push ecx
mov ecx, eax
call fcn.10007beb
mov byte [ebp - 0x10d1], 1
test eax, eax
jne 0x100029bd
mov byte [ebp - 0x10d1], 0
test bl, 2
je 0x100029d4
push 0
push 1
lea ecx, [ebp - 0x1058]
and ebx, 0xfffffffd
call fcn.10006b0c
and dword [ebp - 4], 0
test bl, 1
je 0x100029ef
xor ebx, ebx
lea ecx, [ebp - 0x1040]
push ebx
push 1
call fcn.10006b0c
jmp 0x100029f1
xor ebx, ebx
cmp byte [ebp - 0x10d1], 0
je 0x10002e7b
xor eax, eax
mov dword [ebp - 0x102c], 7
push str.FOUND_n
lea ecx, [ebp - 0x1040]
mov dword [ebp - 0x1030], ebx
mov word [ebp - 0x1040], ax
call fcn.10006c7d
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1028]
mov eax, dword [ebp - 0x1018]
push esi
add eax, 0xfffffffa
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.100065dc
lea ecx, [ebp - 0x1040]
push ecx
mov ecx, eax
call fcn.10007beb
push ebx
push 1
lea ecx, [ebp - 0x1058]
mov esi, eax
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], bl
call fcn.10006b0c
xor eax, eax
test esi, esi
jne 0x10002def
push 7
pop ecx
mov dword [ebp - 0x105c], ecx
mov dword [ebp - 0x1060], ebx
mov word [ebp - 0x1070], ax
mov dword [ebp - 0x1074], ecx
mov dword [ebp - 0x1078], ebx
mov word [ebp - 0x1088], ax
mov esi, 0x10045a90
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.100010b1
push eax
push 2
push esi
lea ecx, [ebp - 0x1028]
call fcn.10006bd8
mov esi, eax
cmp esi, 0xffffffff
je 0x10002afe
push esi
push ebx
lea eax, [ebp - 0x1058]
push eax
lea ecx, [ebp - 0x1028]
call fcn.100065dc
push eax
lea ecx, [ebp - 0x1070]
call fcn.10006619
push ebx
push 1
lea ecx, [ebp - 0x1058]
call fcn.10006b0c
mov ecx, 0x10045b0c
lea ebx, [esi + 2]
call fcn.100010b1
push eax
push ebx
push 0x10045b0c
lea ecx, [ebp - 0x1028]
call fcn.10006bd8
cmp eax, 0xffffffff
je 0x10002b57
sub eax, esi
lea ecx, [ebp - 0x1028]
dec eax
push eax
push ebx
lea eax, [ebp - 0x1058]
push eax
call fcn.100065dc
push eax
lea ecx, [ebp - 0x1088]
call fcn.10006619
xor ebx, ebx
lea ecx, [ebp - 0x1058]
push ebx
push 1
call fcn.10006b0c
jmp 0x10002b59
xor ebx, ebx
push ebx
sub esp, 0x18
lea eax, [ebp - 0x1070]
mov ecx, esp
push eax
call fcn.100066b4
mov ecx, edi
call fcn.100017db
test al, al
je 0x10002ba2
mov esi, str.:_OK
mov ecx, esi
call fcn.100010b1
push eax
push esi
lea ecx, [ebp - 0x1070]
call fcn.10006da2
lea eax, [ebp - 0x1070]
mov ecx, edi
push eax
call fcn.10002f13
jmp 0x10002dce
cmp byte [edi + 0x40db], 0
jne 0x10002bcc
cmp byte [edi + 0x40dc], 0
jne 0x10002bba
cmp byte [edi + 0x2a], 0
je 0x10002bcc
inc dword [edi + 0x18]
inc dword [edi + 0x1c]
inc dword [edi + 0x4100]
inc dword [edi + 0x40f8]
lea eax, [edi + 0x410c]
cmp dword [eax + 0x14], 8
jb 0x10002bda
mov eax, dword [eax]
xor ecx, ecx
mov word [eax], cx
mov dword [edi + 0x4108], 2
cmp byte [edi + 0x40db], cl
je 0x10002c0a
lea edx, [ebp - 0x10d1]
mov byte [ebp - 0x10d1], 1
inc ecx
call fcn.10008c76
mov byte [edi + 0x40db], bl
lea eax, [edi + 0x40e0]
push eax
lea ecx, [ebp - 0x10d0]
call fcn.10002ea5
mov byte [ebp - 4], 5
lea eax, [ebp - 0x10a4]
cmp dword [ebp - 0x1090], 8
cmovae eax, dword [ebp - 0x10a4]
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x10d0]
cmp dword [ebp - 0x10bc], 8
cmovae eax, dword [ebp - 0x10d0]
or esi, 0xffffffff
push esi
push ebx
mov word [eax], cx
lea eax, [ebp - 0x1070]
push eax
lea ecx, [ebp - 0x10d0]
call fcn.10006cfa
push esi
push ebx
lea eax, [ebp - 0x1088]
push eax
lea ecx, [ebp - 0x10a4]
call fcn.10006cfa
cmp byte [edi + 0x415d], 0
jne 0x10002cad
cmp dword [edi + 0x416c], ebx
mov eax, dword [ebp - 0x10b4]
cmovne eax, esi
cmp byte [edi + 0x29], 0
mov dword [ebp - 0x10b4], eax
jne 0x10002cad
push 4
lea edx, [ebp - 0x10d0]
pop ecx
call fcn.10008c76
cmp byte [edi + 0x40dd], 0
je 0x10002cce
cmp byte [edi + 0x29], 0
jne 0x10002cc5
xor edx, edx
xor ecx, ecx
call fcn.10008c76
mov word [edi + 0x40dc], 0
cmp byte [edi + 0x40de], 0
je 0x10002cef
cmp byte [edi + 0x29], 0
jne 0x10002ce6
xor edx, edx
xor ecx, ecx
call fcn.10008c76
mov byte [edi + 0x2a], bl
mov byte [edi + 0x40de], bl
mov esi, 0x10045a90
mov ecx, esi
call fcn.100010b1
push eax
push ecx
push esi
lea ecx, [ebp - 0x1028]
call fcn.10006b63
push eax
push ebx
lea eax, [ebp - 0x1040]
push eax
lea ecx, [ebp - 0x1028]
call fcn.100065dc
mov byte [ebp - 4], 6
cmp byte [edi + 0x25], 0
je 0x10002da4
lea eax, [ebp - 0x1040]
push eax
call fcn.100018dd
test eax, eax
je 0x10002da4
cmp byte [edi + 0x24], 0
je 0x10002da4
mov esi, dword [ebp - 0x1018]
lea ecx, [ebp - 0x1028]
inc dword [edi + 0x20]
dec esi
push esi
call fcn.10007319
cmp dword [ebp - 0x1014], 8
lea eax, [ebp - 0x1028]
mov dword [ebp - 0x1018], esi
lea edx, [ebp - 0x1028]
cmovae eax, dword [ebp - 0x1028]
xor ecx, ecx
push 0x10045b10
mov word [eax + esi*2], cx
lea ecx, [ebp - 0x1058]
call fcn.10007917
pop ecx
push eax
lea ecx, [ebp - 0x1028]
call fcn.10006619
push ebx
push 1
lea ecx, [ebp - 0x1058]
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x1040]
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x10a4]
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x10d0]
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x1088]
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x1070]
call fcn.10006b0c
jmp 0x10002e7b
push 0x10045b24
lea ecx, [ebp - 0x1040]
mov dword [ebp - 0x102c], 7
mov dword [ebp - 0x1030], ebx
mov word [ebp - 0x1040], ax
call fcn.10006c7d
or eax, 0xffffffff
mov byte [ebp - 4], 7
push eax
mov eax, dword [ebp - 0x1018]
lea ecx, [ebp - 0x1028]
add eax, 0xfffffffd
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.100065dc
lea ecx, [ebp - 0x1040]
push ecx
mov ecx, eax
call fcn.10007beb
push ebx
push 1
lea ecx, [ebp - 0x1058]
mov esi, eax
call fcn.10006b0c
push ebx
push 1
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], bl
call fcn.10006b0c
test esi, esi
jne 0x10002e7b
lea eax, [ebp - 0x1028]
mov ecx, edi
push eax
call fcn.10002f13
push ebx
push 1
lea ecx, [ebp - 0x1028]
call fcn.10006b0c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000a179
mov esp, ebp
pop ebp
ret