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

Disassembly:
push ebp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x1c
mov ebp, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
mov byte [ecx], 0
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
test edx, edx
jne 0x48bb40
mov eax, dword [ecx + 0x70]
test eax, eax
je 0x48bb60
mov ecx, eax
call fcn.0048d4c0
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
test bl, bl
jne 0x48bb26
test byte [ecx + 0xd], 0x10
je 0x48bb26
mov ebx, dword [ecx + 0x78]
mov eax, dword [ebx + 8]
cmp dword [ebx + 0xc], eax
jbe 0x48bbc9
movzx eax, word [eax]
mov esi, dword [ecx + 0x7c]
test esi, esi
je 0x48bbdd
cmp ax, 0xffff
je 0x48bba4
mov edx, dword [esi]
movzx eax, ax
mov dword [esp], 0x20
mov dword [esp + 4], eax
mov ecx, esi
call dword [edx + 8]
sub esp, 8
test al, al
jne 0x48bb70
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
test edx, edx
jne 0x48bb40
mov byte [edi], 1
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret 8
xor eax, eax
or eax, edx
or eax, 4
mov dword [esp], eax
call fcn.004b2950
sub esp, 4
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret 8
test bl, bl
jne 0x48bb2d
test byte [ecx + 0xd], 0x10
je 0x48bb2d
jmp 0x48badb
mov edx, dword [ebx + 8]
cmp edx, dword [ebx + 0xc]
jae 0x48bbb0
movzx eax, word [edx]
add edx, 2
mov dword [ebx + 8], edx
cmp ax, 0xffff
je 0x48bb9c
mov eax, dword [ebx + 8]
cmp eax, dword [ebx + 0xc]
jae 0x48bbc0
movzx eax, word [eax]
cmp ax, 0xffff
jne 0x48bb02
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
mov eax, 2
jmp 0x48bb42
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
jmp 0x48bb81
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
jmp 0x48bb92
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
mov edx, dword [ebp]
mov ecx, dword [edx - 0xc]
add ecx, ebp
jmp 0x48baed
call fcn.004b4860
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x1c
mov ebp, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
mov byte [ecx], 0
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
test edx, edx
jne 0x48bca0
mov eax, dword [ecx + 0x70]
test eax, eax
je 0x48bcc0
mov ecx, eax
call fcn.0048d4c0
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
test bl, bl
jne 0x48bc86
test byte [ecx + 0xd], 0x10
je 0x48bc86
mov ebx, dword [ecx + 0x78]
mov eax, dword [ebx + 8]
cmp dword [ebx + 0xc], eax
jbe 0x48bd29
movzx eax, word [eax]
mov esi, dword [ecx + 0x7c]
test esi, esi
je 0x48bd3d
cmp ax, 0xffff
je 0x48bd04
mov edx, dword [esi]
movzx eax, ax
mov dword [esp], 0x20
mov dword [esp + 4], eax
mov ecx, esi
call dword [edx + 8]
sub esp, 8
test al, al
jne 0x48bcd0
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
test edx, edx
jne 0x48bca0
mov byte [edi], 1
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret 8
xor eax, eax
or eax, edx
or eax, 4
mov dword [esp], eax
call fcn.004b2950
sub esp, 4
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret 8
test bl, bl
jne 0x48bc8d
test byte [ecx + 0xd], 0x10
je 0x48bc8d
jmp 0x48bc3b
mov edx, dword [ebx + 8]
cmp edx, dword [ebx + 0xc]
jae 0x48bd10
movzx eax, word [edx]
add edx, 2
mov dword [ebx + 8], edx
cmp ax, 0xffff
je 0x48bcfc
mov eax, dword [ebx + 8]
cmp eax, dword [ebx + 0xc]
jae 0x48bd20
movzx eax, word [eax]
cmp ax, 0xffff
jne 0x48bc62
mov eax, dword [ebp]
mov ecx, dword [eax - 0xc]
add ecx, ebp
mov edx, dword [ecx + 0x14]
mov eax, 2
jmp 0x48bca2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
jmp 0x48bce1
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
jmp 0x48bcf2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
mov edx, dword [ebp]
mov ecx, dword [edx - 0xc]
add ecx, ebp
jmp 0x48bc4d
call fcn.004b4860
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
mov ebx, ecx
sub esp, 0x18
mov eax, dword [ecx]
mov eax, dword [eax - 0xc]
mov ecx, dword [ecx + eax + 0x7c]
test ecx, ecx
je 0x48bd99
mov eax, dword [ecx]
mov dword [esp], 0xa
call dword [eax + 0x28]
sub esp, 4
movzx eax, ax
mov ecx, ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call 0x48bda0
sub esp, 0xc
add esp, 0x18
pop ebx
ret 8
call fcn.004b4860
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x8c
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x54], 0x4bda00
mov dword [esp + 0x58], 0x4c022c
mov dword [esp + 0x60], 0x48c105
mov dword [esp + 0x64], esp
mov dword [esp + 0x38], ebx
mov word [esp + 0x2e], bx
lea ebx, [esp + 0x80]
mov dword [esp + 0x5c], ebx
lea ebx, [esp + 0x3c]
mov dword [esp], ebx
mov dword [esp + 0x34], ebx
call fcn.00414b80
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x7f]
mov dword [eax + 4], 0
mov dword [esp + 4], 1
mov dword [esp], eax
mov dword [esp + 0x40], 0xffffffff
call fcn.0048ba90
sub esp, 8
cmp byte [esp + 0x7f], 0
je 0x48bf23
mov ebx, dword [esp + 0x28]
mov eax, dword [ebx]
mov eax, dword [eax - 0xc]
mov eax, dword [ebx + eax + 0x78]
mov ebx, eax
mov dword [esp + 0x24], eax
mov eax, dword [eax + 8]
cmp dword [ebx + 0xc], eax
jbe 0x48c0c3
movzx eax, word [eax]
mov esi, dword [esp + 0x28]
mov ebx, dword [esi + 4]
cmp ax, 0xffff
lea ebp, [ebx + 1]
setne cl
cmp ax, word [esp + 0x2e]
setne dl
test cl, dl
je 0x48bf90
cmp ebp, dword [esp + 0xa4]
jge 0x48bf90
mov edx, dword [esp + 0x24]
mov esi, dword [edx + 0xc]
mov ecx, dword [edx + 8]
mov edx, dword [esp + 0xa4]
mov edi, esi
sub edx, ebx
sub edi, ecx
sub edx, 1
sar edi, 1
cmp edx, edi
cmovle edi, edx
cmp edi, 1
mov dword [esp + 0x20], edi
jg 0x48bfd0
mov ebx, dword [esp + 0xa0]
add ebx, 2
cmp esi, ecx
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0xa0]
mov word [ebx], ax
mov eax, dword [esp + 0x28]
mov dword [eax + 4], ebp
jbe 0x48c0ab
mov ebx, dword [esp + 0x24]
movzx eax, word [ecx]
add ecx, 2
mov dword [ebx + 8], ecx
cmp ax, 0xffff
je 0x48c08f
mov ebx, dword [esp + 0x24]
mov eax, dword [ebx + 8]
cmp eax, dword [ebx + 0xc]
jae 0x48c0db
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
movzx eax, word [eax]
mov ebx, dword [ebx + 4]
mov dword [esp + 0xa0], esi
jmp 0x48be53
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x40], 6
call eax
mov eax, dword [esp + 0x28]
xor edx, edx
mov ebx, dword [eax + 4]
lea esi, [esi]
mov esi, dword [esp + 0xa4]
test esi, esi
jle 0x48bf47
mov eax, dword [esp + 0xa0]
xor ecx, ecx
mov word [eax], cx
test ebx, ebx
jne 0x48bf8a
or edx, 4
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
add ecx, dword [eax - 0xc]
or edx, dword [ecx + 0x14]
mov dword [esp + 0x40], 0xffffffff
mov dword [esp], edx
call fcn.004b2950
sub esp, 4
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00414c10
mov eax, dword [esp + 0x28]
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
test edx, edx
je 0x48bf6d
jmp 0x48bf4e
cmp ax, 0xffff
je 0x48c062
cmp ax, word [esp + 0x38]
mov edx, 4
jne 0x48bf30
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov dword [eax + 4], ebp
mov eax, dword [ebx + 8]
cmp eax, dword [ebx + 0xc]
jae 0x48bf10
add eax, 2
xor edx, edx
mov dword [ebx + 8], eax
mov ebx, ebp
jmp 0x48bf30
test ecx, ecx
mov dword [esp + 0x1c], edi
mov edx, edi
mov eax, ecx
movzx edi, word [esp + 0x2e]
je 0x48bfee
cmp word [eax], di
je 0x48c050
add eax, 2
sub edx, 1
jne 0x48bfe1
shl dword [esp + 0x1c], 1
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x1c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x28]
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x24]
mov esi, dword [eax + 0xc]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x1c]
add dword [esp + 0xa0], eax
add ebx, dword [esp + 0x20]
add ecx, eax
mov eax, dword [esp + 0x24]
cmp ecx, esi
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x28]
mov dword [eax + 4], ebx
jae 0x48c070
movzx eax, word [ecx]
jmp 0x48be53
sub eax, ecx
sar eax, 1
test eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
je 0x48c01e
jmp 0x48bfee
mov edx, 2
jmp 0x48bf30
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x40], 4
call eax
mov ebx, dword [esp + 0x28]
mov ebx, dword [ebx + 4]
jmp 0x48be53
mov eax, dword [esp + 0x28]
mov edx, 2
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x30]
mov dword [esp + 0xa0], eax
jmp 0x48bf30
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x40], 1
call eax
jmp 0x48bedc
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x40], 5
call eax
jmp 0x48be4c
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x40], 1
call eax
mov esi, dword [esp + 0x28]
mov ebx, dword [esi + 4]
mov esi, dword [esp + 0x30]
mov dword [esp + 0xa0], esi
jmp 0x48be53