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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007408f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x1288
call fcn.1001eaa0
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], 0
mov byte [ebp - 0x1294], 0
push 0xfff
push 0
lea eax, [ebp - 0x1293]
push eax
call fcn.10040790
add esp, 0xc
push 0
push 0x200
lea ecx, [ebp - 0x1294]
push ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x78]
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 0
jle 0x10006c26
lea ecx, [ebp - 0x1294]
push ecx
push str.PONG_n
call fcn.10049c40
add esp, 8
test eax, eax
jne 0x10006271
push str.Successful_connection_with_the_scanning_module.
call fcn.10001740
add esp, 4
jmp 0x10006c26
lea edx, [ebp - 0x1294]
push edx
lea eax, [ebp - 0x50]
push eax
call fcn.1000aec0
add esp, 8
mov dword [ebp - 4], 0
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x1294], 0
movzx eax, word [0x100775f0]
test eax, eax
jne 0x100062af
mov dword [ebp - 0x54], 0
jmp 0x100062bf
push 0x100775f0
call fcn.10048ec4
add esp, 4
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x54]
push ecx
push 0
push 0x100775f0
lea ecx, [ebp - 0x50]
call fcn.10014ae0
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x18]
cmp edx, dword [0x100775cc]
je 0x10006322
mov eax, dword [0x100775cc]
push eax
mov ecx, dword [ebp - 0x18]
sub ecx, 1
push ecx
lea edx, [ebp - 0x1bc]
push edx
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x50]
call fcn.1000de20
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x1bc]
call fcn.100125f0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x84]
add eax, 0x10
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx]
mov dword [ebp - 0x8c], edx
cmp dword [ebp - 0x8c], 6
jb 0x10006428
push str.ERROR_n
lea ecx, [ebp - 0x1ec]
call fcn.1000d680
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xa4], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x14]
or ecx, 1
mov dword [ebp - 0x14], ecx
lea edx, [ebp - 0x50]
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
add ecx, 0x10
mov dword [ebp - 0x9c], ecx
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx]
mov dword [ebp - 0xa0], eax
mov ecx, dword [0x100775cc]
push ecx
mov edx, dword [ebp - 0xa0]
sub edx, 6
push edx
lea eax, [ebp - 0x1d4]
push eax
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0xa8], eax
mov ecx, dword [ebp - 0x14]
or ecx, 2
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0xa4]
push edx
mov ecx, dword [ebp - 0xa8]
call fcn.10013b40
test eax, eax
jne 0x1000640a
mov dword [ebp - 0x58], 1
jmp 0x10006411
mov dword [ebp - 0x58], 0
mov al, byte [ebp - 0x58]
mov byte [ebp - 0x19], al
movzx ecx, byte [ebp - 0x19]
test ecx, ecx
jne 0x10006428
mov dword [ebp - 0x5c], 1
jmp 0x1000642f
mov dword [ebp - 0x5c], 0
mov dl, byte [ebp - 0x5c]
mov byte [ebp - 0x1a], dl
mov eax, dword [ebp - 0x14]
and eax, 2
je 0x10006457
and dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 4], 3
push 0
push 1
lea ecx, [ebp - 0x1d4]
call fcn.100125f0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
and ecx, 1
je 0x10006481
and dword [ebp - 0x14], 0xfffffffe
mov byte [ebp - 4], 4
push 0
push 1
lea ecx, [ebp - 0x1ec]
call fcn.100125f0
mov byte [ebp - 4], 0
movzx edx, byte [ebp - 0x1a]
test edx, edx
je 0x10006c0c
push str.FOUND_n
lea ecx, [ebp - 0x21c]
call fcn.1000d680
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xc0], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x50]
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], edx
mov eax, dword [ebp - 0xb4]
add eax, 0x10
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ecx]
mov dword [ebp - 0xbc], edx
mov eax, dword [0x100775cc]
push eax
mov ecx, dword [ebp - 0xbc]
sub ecx, 6
push ecx
lea edx, [ebp - 0x204]
push edx
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xc0]
push eax
mov ecx, dword [ebp - 0xc4]
call fcn.10013b40
test eax, eax
jne 0x10006529
mov dword [ebp - 0x60], 1
jmp 0x10006530
mov dword [ebp - 0x60], 0
mov cl, byte [ebp - 0x60]
mov byte [ebp - 0x1b], cl
mov byte [ebp - 4], 6
push 0
push 1
lea ecx, [ebp - 0x204]
call fcn.100125f0
mov byte [ebp - 4], 7
push 0
push 1
lea ecx, [ebp - 0x21c]
call fcn.100125f0
mov byte [ebp - 4], 0
movzx edx, byte [ebp - 0x1b]
test edx, edx
je 0x10006b24
lea ecx, [ebp - 0x11c]
call fcn.1000d720
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x148]
call fcn.1000d720
mov byte [ebp - 4], 9
movzx eax, word [0x100775f0]
test eax, eax
jne 0x1000659e
mov dword [ebp - 0x64], 0
jmp 0x100065ae
push 0x100775f0
call fcn.10048ec4
add esp, 4
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x64]
push ecx
push 2
push 0x100775f0
lea ecx, [ebp - 0x50]
call fcn.10014ae0
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x18]
cmp edx, dword [0x100775cc]
je 0x10006613
mov eax, dword [ebp - 0x18]
push eax
push 0
lea ecx, [ebp - 0x234]
push ecx
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0xc8], eax
mov edx, dword [ebp - 0xc8]
push edx
lea ecx, [ebp - 0x11c]
call fcn.1000de20
mov byte [ebp - 4], 0xa
push 0
push 1
lea ecx, [ebp - 0x234]
call fcn.100125f0
mov byte [ebp - 4], 9
movzx eax, word [0x100777b8]
test eax, eax
jne 0x10006627
mov dword [ebp - 0x68], 0
jmp 0x10006637
push 0x100777b8
call fcn.10048ec4
add esp, 4
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0x18]
add edx, 2
push edx
push 0x100777b8
lea ecx, [ebp - 0x50]
call fcn.10014ae0
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
cmp eax, dword [0x100775cc]
je 0x100066ac
mov ecx, dword [ebp - 0x6c]
sub ecx, dword [ebp - 0x18]
sub ecx, 1
push ecx
mov edx, dword [ebp - 0x18]
add edx, 2
push edx
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0xcc]
push ecx
lea ecx, [ebp - 0x148]
call fcn.1000de20
mov byte [ebp - 4], 0xb
push 0
push 1
lea ecx, [ebp - 0x24c]
call fcn.100125f0
mov byte [ebp - 4], 9
push 0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x130], esp
lea edx, [ebp - 0x11c]
push edx
call fcn.1000d5d0
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x10]
call fcn.100081a0
mov byte [ebp - 0x1c], al
movzx eax, byte [ebp - 0x1c]
test eax, eax
je 0x1000676e
movzx ecx, word [str.:_OK]
test ecx, ecx
jne 0x100066f6
mov dword [ebp - 0x70], 0
jmp 0x10006706
push str.:_OK
call fcn.10048ec4
add esp, 4
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x70]
push edx
push str.:_OK
lea ecx, [ebp - 0x11c]
call fcn.10013150
lea eax, [ebp - 0x11c]
push eax
mov ecx, dword [ebp - 0x10]
call fcn.10006c40
mov byte [ebp - 4], 0xc
push 0
push 1
lea ecx, [ebp - 0x148]
call fcn.100125f0
mov byte [ebp - 4], 0xd
push 0
push 1
lea ecx, [ebp - 0x11c]
call fcn.100125f0
mov dword [ebp - 4], 0xe
push 0
push 1
lea ecx, [ebp - 0x50]
call fcn.100125f0
mov dword [ebp - 4], 0xffffffff
jmp 0x10006c26
mov ecx, dword [ebp - 0x10]
movzx edx, byte [ecx + 0x40db]
test edx, edx
jne 0x100067dd
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x40dc]
test ecx, ecx
jne 0x10006795
mov edx, dword [ebp - 0x10]
movzx eax, byte [edx + 0x2a]
test eax, eax
je 0x100067dd
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x18]
add edx, 1
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x1c]
add edx, 1
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x1c], edx
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x4100]
add edx, 1
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x4100], edx
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x40f8]
add edx, 1
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x40f8], edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x410c
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x14], 8
jb 0x10006811
mov ecx, dword [ebp - 0x124]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [edx]
mov dword [ebp - 0x28], eax
jmp 0x10006817
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
xor edx, edx
shl edx, 1
xor eax, eax
mov ecx, dword [ebp - 0x28]
mov word [ecx + edx], ax
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x4108], 2
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x40db]
test ecx, ecx
je 0x1000685b
mov byte [ebp - 0x1d], 1
lea edx, [ebp - 0x1d]
push edx
push 1
call fcn.1001ae00
add esp, 8
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x40db], 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x40e0
push ecx
lea ecx, [ebp - 0x18c]
call fcn.1000d9c0
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x160]
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
cmp dword [ecx + 0x14], 8
jb 0x100068a5
mov edx, dword [ebp - 0x128]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
jmp 0x100068ab
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], edx
xor eax, eax
shl eax, 1
xor ecx, ecx
mov edx, dword [ebp - 0x30]
mov word [edx + eax], cx
lea eax, [ebp - 0x18c]
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x34]
cmp dword [edx + 0x14], 8
jb 0x100068e9
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x34]
mov edx, dword [ecx]
mov dword [ebp - 0x38], edx
jmp 0x100068ef
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
xor ecx, ecx
shl ecx, 1
xor edx, edx
mov eax, dword [ebp - 0x38]
mov word [eax + ecx], dx
lea ecx, [ebp - 0x11c]
push ecx
lea ecx, [ebp - 0x18c]
call fcn.1000df90
lea edx, [ebp - 0x148]
push edx
lea ecx, [ebp - 0x160]
call fcn.1000df90
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x415d]
test ecx, ecx
jne 0x10006960
mov edx, dword [ebp - 0x10]
cmp dword [edx + 0x416c], 0
je 0x10006944
mov dword [ebp - 0x170], 0xffffffff
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x29]
test ecx, ecx
jne 0x10006960
lea edx, [ebp - 0x18c]
push edx
push 4
call fcn.1001ae00
add esp, 8
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x40dd]
test ecx, ecx
je 0x10006999
mov edx, dword [ebp - 0x10]
movzx eax, byte [edx + 0x29]
test eax, eax
jne 0x10006985
push 0
push 0
call fcn.1001ae00
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [ecx + 0x40dc], 0
mov edx, dword [ebp - 0x10]
mov byte [edx + 0x40dd], 0
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x40de]
test ecx, ecx
je 0x100069cf
mov edx, dword [ebp - 0x10]
movzx eax, byte [edx + 0x29]
test eax, eax
jne 0x100069be
push 0
push 0
call fcn.1001ae00
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [ecx + 0x2a], 0
mov edx, dword [ebp - 0x10]
mov byte [edx + 0x40de], 0
mov eax, dword [0x100775cc]
mov dword [ebp - 0xdc], eax
movzx ecx, word [0x100775f0]
test ecx, ecx
jne 0x100069ee
mov dword [ebp - 0x74], 0
jmp 0x100069fe
push 0x100775f0
call fcn.10048ec4
add esp, 4
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x74]
push edx
mov eax, dword [ebp - 0xdc]
push eax
push 0x100775f0
lea ecx, [ebp - 0x50]
call fcn.100187e0
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0xe0]
push ecx
push 0
lea edx, [ebp - 0x1a4]
push edx
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x25]
test ecx, ecx
je 0x10006ab8
lea edx, [ebp - 0x1a4]
push edx
mov ecx, dword [ebp - 0x10]
call fcn.10006ef0
test eax, eax
je 0x10006ab8
mov eax, dword [ebp - 0x10]
movzx ecx, byte [eax + 0x24]
test ecx, ecx
je 0x10006ab8
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x20]
add eax, 1
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x20], eax
lea ecx, [ebp - 0x50]
call fcn.100154d0
push 0x100777bc
lea edx, [ebp - 0x50]
push edx
lea eax, [ebp - 0x264]
push eax
call fcn.1000c2b0
add esp, 0xc
mov dword [ebp - 0xe4], eax
mov ecx, dword [ebp - 0xe4]
push ecx
lea ecx, [ebp - 0x50]
call fcn.1000de20
mov byte [ebp - 4], 0x11
push 0
push 1
lea ecx, [ebp - 0x264]
call fcn.100125f0
mov byte [ebp - 4], 0x12
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.100125f0
mov byte [ebp - 4], 9
mov byte [ebp - 4], 0x13
push 0
push 1
lea ecx, [ebp - 0x160]
call fcn.100125f0
mov byte [ebp - 4], 0x14
push 0
push 1
lea ecx, [ebp - 0x18c]
call fcn.100125f0
mov byte [ebp - 4], 0x15
push 0
push 1
lea ecx, [ebp - 0x148]
call fcn.100125f0
mov byte [ebp - 4], 0x16
push 0
push 1
lea ecx, [ebp - 0x11c]
call fcn.100125f0
mov byte [ebp - 4], 0
jmp 0x10006c0c
push 0x100777d0
lea ecx, [ebp - 0x294]
call fcn.1000d680
mov dword [ebp - 0xe8], eax
mov edx, dword [ebp - 0xe8]
mov dword [ebp - 0xfc], edx
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x50]
mov dword [ebp - 0xec], eax
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0xf0]
add edx, 0x10
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax]
mov dword [ebp - 0xf8], ecx
mov edx, dword [0x100775cc]
push edx
mov eax, dword [ebp - 0xf8]
sub eax, 3
push eax
lea ecx, [ebp - 0x27c]
push ecx
lea ecx, [ebp - 0x50]
call fcn.10018aa0
mov dword [ebp - 0x100], eax
mov edx, dword [ebp - 0xfc]
push edx
mov ecx, dword [ebp - 0x100]
call fcn.10013b40
test eax, eax
jne 0x10006bc1
mov dword [ebp - 0x78], 1
jmp 0x10006bc8
mov dword [ebp - 0x78], 0
mov al, byte [ebp - 0x78]
mov byte [ebp - 0x1e], al
mov byte [ebp - 4], 0x18
push 0
push 1
lea ecx, [ebp - 0x27c]
call fcn.100125f0
mov byte [ebp - 4], 0x19
push 0
push 1
lea ecx, [ebp - 0x294]
call fcn.100125f0
mov byte [ebp - 4], 0
movzx ecx, byte [ebp - 0x1e]
test ecx, ecx
je 0x10006c0c
lea edx, [ebp - 0x50]
push edx
mov ecx, dword [ebp - 0x10]
call fcn.10006c40
mov dword [ebp - 4], 0x1a
push 0
push 1
lea ecx, [ebp - 0x50]
call fcn.100125f0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret