Function at 0x48c8a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x538
mov eax, dword [0x4d31c4]
xor eax, esp
mov dword [esp + 0x534], eax
push ebx
mov ebx, dword [esp + 0x544]
or edx, 0xffffffff
push ebp
push esi
mov esi, dword [esp + 0x548]
xor ebp, ebp
mov dword [esp + 0x20], esi
mov dword [esp + 0x10], edx
cmp dword [esi + 0xf0], ebp
je 0x48c8f9
call fcn.00498750
test eax, eax
je 0x48c8f9
push dword [esi + 0xf0]
call fcn.004987f0
add esp, 4
test eax, eax
je 0x48d032
push edi
mov edi, dword [esp + 0x554]
cmp edi, 2
jl 0x48d016
movzx eax, word [ebx]
mov esi, dword [sym.imp.WS2_32.dll_ntohs]
push eax
call esi
movzx eax, ax
mov dword [esp + 0x28], eax
cmp edi, 4
jl 0x48d016
movzx eax, word [ebx + 2]
push eax
call esi
movzx eax, ax
mov dword [esp + 0x30], eax
cmp edi, 6
jl 0x48d016
movzx eax, word [ebx + 4]
push eax
call esi
movzx eax, ax
mov dword [esp + 0x18], eax
cmp edi, 8
jl 0x48d016
movzx eax, word [ebx + 6]
push eax
call esi
movzx eax, ax
mov dword [esp + 0x2c], eax
cmp edi, 0xa
jl 0x48d016
movzx eax, word [ebx + 8]
push eax
call esi
movzx eax, ax
mov dword [esp + 0x34], eax
cmp edi, 0xc
jl 0x48d016
movzx eax, word [ebx + 0xa]
mov esi, 0xc
push eax
mov dword [esp + 0x14], esi
call dword [sym.imp.WS2_32.dll_ntohs]
push dword [esp + 0x28]
push dword [esp + 0x28]
call fcn.0048b9a0
mov ecx, eax
add esp, 8
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x48d016
mov eax, dword [esp + 0x24]
cmp dword [ecx + 0x7c], eax
jne 0x48d089
push 0x20c
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.00466310
mov eax, dword [esp + 0x3c]
add esp, 0xc
test ax, ax
jns 0x48d016
and eax, 0x20f
je 0x48c9f3
cmp ax, 3
jne 0x48d001
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ebp
movzx eax, byte [eax + 4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x18]
movzx eax, ax
mov dword [esp + 0x28], eax
test eax, eax
je 0x48d001
nop word [eax + eax]
push 0x100
lea eax, [esp + 0x248]
mov byte [esp + 0x248], 0
push eax
lea eax, [esp + 0x18]
mov byte [esp + 0x34c], 0
push eax
push edi
push ebx
mov dword [esp + 0x2c], esi
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
push 0x100
lea eax, [esp + 0x348]
push eax
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x2c]
push dword [eax + 8]
push dword [eax]
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x38], 0
je 0x48cace
lea ecx, [esp + 0x344]
lea eax, [esp + 0x244]
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48cac0
test dl, dl
je 0x48cabc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48cac0
add eax, 2
add ecx, 2
test dl, dl
jne 0x48caa0
xor eax, eax
jmp 0x48cac5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48caf0
lea ebp, [eax + 1]
jmp 0x48caf0
lea eax, [esp + 0x344]
push eax
lea eax, [esp + 0x248]
push eax
call fcn.004812a0
add esp, 8
test eax, eax
mov eax, 1
cmove ebp, eax
mov esi, dword [esp + 0x10]
add esi, 4
mov dword [esp + 0x10], esi
cmp esi, edi
jg 0x48d001
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x28]
jb 0x48ca20
test ebp, ebp
je 0x48d001
mov eax, dword [esp + 0x2c]
movzx eax, ax
mov dword [esp + 0x28], 0
test eax, eax
je 0x48ce07
mov ebp, dword [esp + 0x40]
nop dword [eax]
push 0x100
lea eax, [esp + 0x248]
mov byte [esp + 0x248], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
mov eax, dword [esp + 0x10]
lea esi, [eax + 2]
cmp esi, edi
jg 0x48d001
movzx eax, word [ebx + eax]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
mov dword [esp + 0x18], eax
lea eax, [esi + 2]
cmp eax, edi
jg 0x48d001
movzx eax, word [ebx + esi]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
mov dword [esp + 0x24], eax
lea eax, [esi + 6]
cmp eax, edi
jg 0x48d001
push dword [ebx + esi + 2]
call dword [sym.imp.WS2_32.dll_ntohl]
lea ecx, [esi + 6]
mov dword [esp + 0x1c], eax
lea esi, [ecx + 2]
cmp esi, edi
jg 0x48d001
movzx ecx, word [ebx + ecx]
push ecx
mov dword [esp + 0x14], esi
call dword [sym.imp.WS2_32.dll_ntohs]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
movzx eax, ax
cmp cx, 1
jne 0x48cc8f
cmp dx, cx
jne 0x48ccd0
mov ecx, dword [esp + 0x20]
cmp byte [ecx + 4], 1
jne 0x48cca9
test al, 3
jne 0x48d001
mov edx, eax
mov ecx, 0x20
shr edx, 2
sub ecx, ebp
mov eax, 0x20
sub eax, ebp
cmp ecx, edx
cmovb edx, eax
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x14], eax
mov dword [esp + 0x24], edx
cmovb eax, dword [esp + 0x14]
shl edx, 2
mov dword [esp + 0x14], eax
lea eax, [edx + esi]
mov dword [esp + 0x18], eax
cmp eax, edi
jg 0x48d001
push edx
lea eax, [ebx + esi]
push eax
lea eax, [esp + 0x4c]
lea eax, [eax + ebp*4]
push eax
call fcn.00465d90
mov ebp, dword [esp + 0x4c]
add esp, 0xc
add ebp, dword [esp + 0x24]
or dword [esp + 0x3c], 1
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
mov dword [esp + 0x40], ebp
cmp ebp, 0x20
jne 0x48ccaf
mov esi, dword [esp + 0x14]
jmp 0x48ce0a
cmp cx, 0xc
jne 0x48ccd0
cmp dx, 1
jne 0x48ccd0
mov ecx, dword [esp + 0x20]
cmp byte [ecx + 4], 0xc
je 0x48cdcc
add esi, eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
inc esi
movzx eax, cx
mov dword [esp + 0x28], esi
cmp esi, eax
jb 0x48cb40
mov esi, dword [esp + 0x14]
jmp 0x48ce0a
cmp cx, 5
jne 0x48cd25
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 0x78]
test ecx, ecx
je 0x48cca9
cmp dword [ecx], 0
jne 0x48cca9
push 0xff
lea eax, [esp + 0x448]
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
lea eax, [esp + 0x444]
push eax
call fcn.00485510
mov ecx, dword [esp + 0x24]
add esp, 4
mov ecx, dword [ecx + 0x78]
mov dword [ecx], eax
jmp 0x48ccaf
cmp cx, 0x1c
jne 0x48cca9
cmp dx, 1
jne 0x48cca9
mov ecx, dword [esp + 0x20]
cmp byte [ecx + 4], 0x1c
jne 0x48cca9
test al, 0xf
jne 0x48d001
mov edx, eax
mov ecx, 0x20
shr edx, 4
sub ecx, ebp
mov eax, 0x20
sub eax, ebp
cmp ecx, edx
cmovb edx, eax
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
cmovb eax, dword [esp + 0x14]
shl edx, 4
mov dword [esp + 0x14], eax
lea eax, [edx + esi]
mov dword [esp + 0x1c], eax
cmp eax, edi
jg 0x48d001
push edx
lea eax, [ebx + esi]
shl ebp, 4
push eax
lea eax, [esp + 0x4c]
add eax, ebp
push eax
call fcn.00465d90
mov ebp, dword [esp + 0x4c]
add esp, 0xc
add ebp, dword [esp + 0x18]
or dword [esp + 0x3c], 1
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x10], eax
cmp ebp, 0x20
je 0x48cc86
jmp 0x48ccaf
push 0xff
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x14], eax
cmovb eax, dword [esp + 0x14]
or dword [esp + 0x3c], 1
mov esi, eax
mov dword [esp + 0x14], esi
jmp 0x48ce0a
or esi, 0xffffffff
test byte [esp + 0x3c], 1
jne 0x48cfde
mov eax, dword [esp + 0x34]
movzx eax, ax
mov dword [esp + 0x2c], 0
test eax, eax
je 0x48cfde
nop dword [eax]
push 0x100
lea eax, [esp + 0x248]
mov byte [esp + 0x248], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
mov eax, dword [esp + 0x10]
lea esi, [eax + 2]
cmp esi, edi
jg 0x48d001
movzx eax, word [ebx + eax]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
lea ebp, [esi + 2]
movzx eax, ax
mov dword [esp + 0x18], eax
cmp ebp, edi
jg 0x48d001
movzx eax, word [ebx + esi]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
lea esi, [ebp + 4]
movzx eax, ax
mov dword [esp + 0x28], eax
cmp esi, edi
jg 0x48d001
push dword [ebx + ebp]
call dword [sym.imp.WS2_32.dll_ntohl]
add esi, 2
mov dword [esp + 0x1c], eax
cmp esi, edi
jg 0x48d001
movzx ecx, word [ebx + ebp + 4]
push ecx
mov dword [esp + 0x14], esi
call dword [sym.imp.WS2_32.dll_ntohs]
cmp word [esp + 0x18], 6
movzx eax, ax
jne 0x48cfbc
cmp word [esp + 0x28], 1
jne 0x48cfbc
push 0x100
lea eax, [esp + 0x248]
mov byte [esp + 0x248], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
push 0x100
lea eax, [esp + 0x248]
mov byte [esp + 0x248], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.0048c7a0
add esp, 0x14
test eax, eax
js 0x48d001
mov eax, dword [esp + 0x10]
lea esi, [eax + 4]
cmp esi, edi
jg 0x48d001
push dword [ebx + eax]
call dword [sym.imp.WS2_32.dll_ntohl]
lea ebp, [esi + 4]
cmp ebp, edi
jg 0x48d001
push dword [ebx + esi]
call dword [sym.imp.WS2_32.dll_ntohl]
lea esi, [ebp + 4]
cmp esi, edi
jg 0x48d001
push dword [ebx + ebp]
call dword [sym.imp.WS2_32.dll_ntohl]
lea ebp, [esi + 4]
cmp ebp, edi
jg 0x48d001
push dword [ebx + esi]
mov esi, dword [sym.imp.WS2_32.dll_ntohl]
call esi
lea eax, [ebp + 4]
cmp eax, edi
jg 0x48d001
push dword [ebx + ebp]
mov dword [esp + 0x14], eax
call esi
mov ecx, dword [esp + 0x1c]
mov esi, eax
cmp dword [esp + 0x14], ecx
cmovb ecx, dword [esp + 0x14]
cmp ecx, eax
cmovb esi, ecx
mov dword [esp + 0x14], esi
jmp 0x48cfc6
add esi, eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
inc ebp
movzx eax, cx
mov dword [esp + 0x2c], ebp
cmp ebp, eax
jb 0x48ce30
lea eax, [esp + 0x38]
push eax
xor eax, eax
cmp esi, 0xffffffff
cmovne eax, esi
push eax
mov eax, dword [esp + 0x38]
push eax
push dword [esp + 0x2c]
call fcn.0048c4c0
add esp, 0x10
xor eax, eax
jmp 0x48d019
mov eax, dword [esp + 0x30]
push 0
push 0
push eax
push dword [esp + 0x2c]
call fcn.0048c4c0
add esp, 0x10
or eax, 0xffffffff
mov ecx, dword [esp + 0x544]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004634b5
add esp, 0x538
ret
push 0x4d9ee8
push 0x4d9efc
push 0x3f7
push 0x4d9f3c
push 0x4d9f70
push 0xdeaddead
call fcn.004973e0
add esp, 0x18
push 0x4d9f9c
push 0x4d9ff8
push 0x3f7
push 0x4da064
push 0x4da0a4
push 2
call fcn.0046857e
add esp, 4
push eax
call fcn.004040c0
add esp, 0x18
call fcn.00476c0e
push 0x4da1b4
push 0x4da1c0
push 0x404
push 0x4da1d4
push 0x4da1dc
push 0xdeaddead
call fcn.004973e0
add esp, 0x18
push str.reply_parse
push str.req__base__base
push 0x404
push 0x4da220
push 0x4da228
push 2
call fcn.0046857e
add esp, 4
push eax
call fcn.004040c0
add esp, 0x18
call fcn.00476c0e
int3