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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
mov eax, dword [ebp + 0x1c]
push ebx
push esi
lea ecx, [eax + 0x4a4]
push edi
mov edi, eax
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x18], ecx
cmp eax, ecx
ja 0x1001056f
jmp 0x10010270
cmp edi, 0x455e
ja 0x100104b2
je 0x10010591
cmp edi, 0x440b
ja 0x1001033d
je 0x1001056f
mov eax, edi
sub eax, 0x43c3
je 0x100102ae
sub eax, 0x24
jne case.0x100104c8.19212
mov dword [ebp - 4], eax
jmp case.0x100104c8.19212
cmp dword [ebp + 8], 0
je 0x10010588
cmp dword [ebp + 0x14], 0
je 0x10010588
mov esi, dword [ebp + 0x10]
mov eax, dword [esi]
test eax, eax
je 0x10010588
nop
mov edx, 0x4272
mov eax, edx
sub eax, 0x4272
je 0x100102f4
sub eax, 0x1c
je 0x100102ed
sub eax, 0x1c
jne 0x10010328
inc dword [ebp + 0x14]
jmp 0x10010328
dec dword [esi]
inc dword [ebp + 8]
jmp 0x10010328
mov eax, dword [ebp + 8]
mov al, byte [eax]
cmp al, 0x61
jl 0x10010306
cmp al, 0x7a
jg 0x10010306
lea ecx, [eax - 0x20]
jmp 0x10010308
mov cl, al
mov eax, dword [ebp + 0x14]
mov al, byte [eax]
cmp al, 0x61
jl 0x10010317
cmp al, 0x7a
jg 0x10010317
sub al, 0x20
movsx edi, al
movsx ebx, cl
sub ebx, edi
jne 0x10010579
mov edi, dword [ebp - 0xc]
add edx, 0x1c
cmp edx, 0x42aa
jbe 0x100102d5
cmp dword [esi], 0
ja 0x100102d0
jmp case.0x100104c8.19212
cmp edi, 0x453a
jne case.0x100104c8.19212
pop ss
add al, byte [eax]
add byte [ecx - 6], dh
jno 0x10010345
and ch, byte [eax + 8]
xor esi, esi
mov dword [ebp - 4], esi
mov ecx, dword [ebp - 4]
mov dword [0x1007d038], ecx
mov edx, dword [0x1007d038]
test edx, edx
jne 0x1001049b
xor ebx, ebx
mov dword [ebp - 4], 4
cmp ebx, 0xdb
ja case.0x10010386.1
movzx eax, byte [ebx + 0x100105c4]
jmp dword [eax*4 + 0x100105b0]
lea ecx, [ebp - 0x24]
push ecx
push 0x1007cfe8
lea edx, [ebp - 0x94]
push 0x1e74
push edx
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], esi
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x24], 0x50
call fcn.1006bc50
add esp, 0x10
jmp case.0x10010386.1
mov eax, dword [ebp - 0x14]
push 1
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
test eax, eax
jne 0x10010452
mov edi, 0xc73
cmp edi, edi
jne 0x10010442
xlatb
push cs
std
ret 0xbe28
add edi, 0xa
cmp edi, 0xc73
jbe 0x10010418
mov edi, dword [ebp - 0xc]
jmp case.0x10010386.1
mov ecx, dword [0x1007d038]
test ecx, ecx
jne case.0x10010386.1
lea esp, [esp]
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [0x1007d038]
test edx, edx
je 0x10010460
jmp case.0x10010386.1
mov dword [ebp - 0x10], 0x1007cfe8
jmp case.0x10010386.1
mov eax, dword [ebp - 0x10]
test al, 0x3f
je 0x1001048c
inc eax
test al, 0x3f
jne 0x10010484
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], eax
add ebx, 0x49
dec dword [ebp - 4]
jne 0x10010373
mov eax, dword [ebp + 8]
mov eax, dword [eax]
lea ecx, [eax + eax*2]
lea edx, [ecx*8 + 0x1007c9e8]
mov dword [ebp - 4], edx
jmp case.0x100104c8.19212
lea eax, [edi - 0x4b0b]
cmp eax, 0x6c
ja case.0x100104c8.19212
movzx eax, byte [eax + 0x100106b4]
jmp dword [eax*4 + 0x100106a0]
mov eax, dword [ebp + 0xc]
cmp dword [ebp - 8], eax
je 0x100104f7
push 0
push 0x22
lea ecx, [ebp - 0x20]
push ecx
push eax
lea edx, [ebp - 0x44]
mov esi, 0x18
push edx
mov dword [ebp - 0x20], esi
call fcn.1006af70
add esp, 0x14
mov dword [ebp + 0x1c], esi
mov eax, dword [ebp + 0x20]
test eax, eax
je case.0x100104c8.19212
mov ecx, dword [ebp + 0x1c]
mov dword [eax], ecx
jmp case.0x100104c8.19212
cmp dword [ebp + 0x1c], 0x18
jne 0x10010518
lea edx, [ebp - 0x44]
mov dword [ebp - 8], edx
mov dword [ebp + 0x1c], 0x1c
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x18]
lea eax, [ebp + 0x1c]
push eax
mov eax, dword [edx]
push ecx
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
mov ecx, dword [ebp + 8]
push eax
mov eax, dword [ebp + 0x14]
push edx
mov edx, dword [ecx]
push eax
push edx
call dword [sym.imp.WS2_32.dll_recvfrom]
mov dword [ebp - 0x1c], eax
jmp case.0x100104c8.19212
cmp dword [ebp + 0x20], 0
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0x1c], 0x10
mov dword [ebp - 8], eax
je case.0x100104c8.19212
mov ecx, dword [ebp + 0x20]
mov eax, dword [ecx]
test eax, eax
jle case.0x100104c8.19212
mov dword [ebp + 0x1c], eax
add edi, 0x24
mov dword [ebp - 0xc], edi
cmp edi, dword [ebp - 0x18]
jbe 0x10010270
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsx edx, al
pop edi
movsx eax, cl
pop esi
sub eax, edx
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
adc dword [esi], 0xffffffaa
pop gs
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop esp
jp 0x1001061a
das
test al, 0x8b
inc ebp
in al, 0x5f
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, byte [esp + eax]
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add eax, dword [ecx + 5]
add dword [eax], edx
add eax, 0xcf100105
add al, 1
adc byte [eax + 0x60100105], ah
add eax, 0x4001001
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add dword [esp + eax], eax
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 2
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 3
int3