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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x8c
mov ebx, dword [ecx]
mov ebp, dword [ecx + 4]
xor edi, edi
cmp ebx, ebp
je case.0x48f97a.84
cmp byte [ebx], 0x4c
jne case.0x48f97a.84
mov esi, ecx
lea eax, [ebx + 1]
mov dword [ecx], eax
mov ecx, ebp
sub ecx, eax
je case.0x48f97a.85
movsx eax, byte [eax]
lea edx, [eax - 0x54]
cmp edx, 0x25
ja case.0x48f97a.85
jmp dword [edx*4 + 0x4b74cc]
cmp ecx, 2
jb case.0x48f97a.84
cmp al, 0x5f
jne case.0x48f97a.84
cmp byte [ebx + 2], 0x5a
jne case.0x48f97a.84
add ebx, 3
mov dword [esi], ebx
mov ecx, esi
call fcn.00489770
test eax, eax
je case.0x48f97a.84
mov ecx, dword [esi]
cmp ecx, dword [esi + 4]
jne 0x48fa4f
jmp case.0x48f97a.84
mov ecx, esi
call fcn.0048a1c0
mov dword [esp + 0x18], eax
test eax, eax
je 0x48fa09
mov ecx, dword [esi]
mov edx, dword [esi + 4]
cmp edx, ecx
je 0x48fa0d
movsx ebx, byte [ecx]
add ebx, 0xffffffd0
xor edi, edi
cmp ebx, 9
ja 0x48fa0f
lea edi, [ecx + 1]
nop dword [eax + eax]
mov dword [esi], edi
cmp edx, edi
je 0x48fa13
movsx ebx, byte [edi]
add ebx, 0xffffffd0
add edi, 1
cmp ebx, 0xa
jb 0x48f9f0
add edi, 0xffffffff
jmp 0x48fa15
xor edi, edi
jmp case.0x48f97a.84
xor edi, edi
xor ebx, ebx
jmp 0x48fa19
mov edi, edx
mov ebx, ecx
mov ecx, edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
cmp edi, ebx
je 0x48fa49
xor edi, edi
cmp ecx, edx
je case.0x48f97a.84
cmp byte [ecx], 0x45
jne case.0x48f97a.84
add ecx, 1
mov dword [esi], ecx
lea eax, [esp + 0x10]
mov dword [esp], eax
lea edx, [esp + 0x18]
mov ecx, esi
call fcn.004927e0
jmp 0x48fa59
xor edi, edi
cmp ecx, edx
je case.0x48f97a.84
cmp byte [ecx], 0x45
jne case.0x48f97a.84
add ecx, 1
mov dword [esi], ecx
mov edi, eax
mov eax, edi
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x34], 0x4b81e8
mov dword [esp + 0x38], 0x4b81ea
movsd xmm0, qword [esp + 0x34]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x24], str.__int128
mov dword [esp + 0x28], 0x4b81f7
movsd xmm0, qword [esp + 0x24]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x4c], 0x4b81e1
mov dword [esp + 0x50], 0x4b81e2
movsd xmm0, qword [esp + 0x4c]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x3c], 0x4b81e5
mov dword [esp + 0x40], 0x4b81e7
movsd xmm0, qword [esp + 0x3c]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x74], str.signed_char
mov dword [esp + 0x78], 0x4b81bc
movsd xmm0, qword [esp + 0x74]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x2c], 0x4b81eb
mov dword [esp + 0x30], 0x4b81ee
movsd xmm0, qword [esp + 0x2c]
jmp 0x4901ea
lea ecx, [ebx + 2]
mov dword [esi], ecx
mov eax, ebp
sub eax, ecx
cmp eax, 0x11
jb case.0x48f97a.84
mov dword [esp + 0xc], ecx
movsx eax, byte [ebx + 2]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 3]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 4]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 5]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 6]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 7]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 8]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 9]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xa]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xb]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xc]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xd]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xe]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xf]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x10]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x11]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
lea eax, [ebx + 0x12]
mov dword [esi], eax
mov dword [esp + 8], eax
cmp eax, ebp
je case.0x48f97a.84
mov eax, dword [esp + 8]
cmp byte [eax], 0x45
jne case.0x48f97a.84
add ebx, 0x13
mov dword [esi], ebx
mov edi, dword [esi + 0x116c]
mov ecx, dword [edi + 4]
lea eax, [ecx + 0x10]
cmp eax, 0xff8
jb 0x48fceb
mov dword [esp], 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test eax, eax
je 0x490222
mov dword [eax], edi
mov dword [eax + 4], 0
mov dword [esi + 0x116c], eax
xor ecx, ecx
mov edi, eax
add ecx, 0x10
mov dword [edi + 4], ecx
mov eax, dword [esi + 0x116c]
mov ecx, dword [eax + 4]
lea edi, [eax + ecx]
add edi, 0xfffffff8
mov dword [eax + ecx - 4], 0x101013f
mov dword [eax + ecx - 8], 0x4b8364
mov edx, dword [esp + 0xc]
mov dword [eax + ecx], edx
mov edx, dword [esp + 8]
mov dword [eax + ecx + 4], edx
jmp case.0x48f97a.84
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x44], 0x4b81e3
mov dword [esp + 0x48], 0x4b81e4
movsd xmm0, qword [esp + 0x44]
jmp 0x4901ea
lea ecx, [ebx + 2]
mov dword [esi], ecx
mov eax, ebp
sub eax, ecx
cmp eax, 0x15
jb case.0x48f97a.84
mov dword [esp + 0xc], ecx
movsx eax, byte [ebx + 2]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 3]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 4]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 5]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 6]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 7]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 8]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 9]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xa]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xb]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xc]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xd]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xe]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0xf]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x10]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x11]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x12]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x13]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x14]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 0x15]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
lea eax, [ebx + 0x16]
mov dword [esi], eax
mov dword [esp + 8], eax
cmp eax, ebp
je case.0x48f97a.84
mov eax, dword [esp + 8]
cmp byte [eax], 0x45
jne case.0x48f97a.84
add ebx, 0x17
mov dword [esi], ebx
mov edi, dword [esi + 0x116c]
mov ecx, dword [edi + 4]
lea eax, [ecx + 0x10]
cmp eax, 0xff8
jb 0x48ff5b
mov dword [esp], 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test eax, eax
je 0x490222
mov dword [eax], edi
mov dword [eax + 4], 0
mov dword [esi + 0x116c], eax
xor ecx, ecx
mov edi, eax
add ecx, 0x10
mov dword [edi + 4], ecx
mov eax, dword [esi + 0x116c]
mov ecx, dword [eax + 4]
lea edi, [eax + ecx]
add edi, 0xfffffff8
mov dword [eax + ecx - 4], 0x1010140
mov dword [eax + ecx - 8], 0x4b83d8
jmp 0x48fd10
lea ecx, [ebx + 2]
mov dword [esi], ecx
mov eax, ebp
sub eax, ecx
cmp eax, 9
jb case.0x48f97a.84
mov dword [esp + 0xc], ecx
movsx eax, byte [ebx + 2]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 3]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 4]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 5]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 6]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 7]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 8]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
movsx eax, byte [ebx + 9]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
test eax, eax
je case.0x48f97a.84
lea eax, [ebx + 0xa]
mov dword [esi], eax
cmp eax, ebp
je case.0x48f97a.84
cmp byte [eax], 0x45
jne case.0x48f97a.84
mov ebp, eax
add ebx, 0xb
mov dword [esi], ebx
mov edi, dword [esi + 0x116c]
mov ecx, dword [edi + 4]
lea eax, [ecx + 0x10]
cmp eax, 0xff8
jb 0x49009a
mov dword [esp], 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test eax, eax
je 0x490222
mov dword [eax], edi
mov dword [eax + 4], 0
mov dword [esi + 0x116c], eax
xor ecx, ecx
mov edi, eax
add ecx, 0x10
mov dword [edi + 4], ecx
mov eax, dword [esi + 0x116c]
mov ecx, dword [eax + 4]
lea edi, [eax + ecx]
add edi, 0xfffffff8
mov dword [eax + ecx - 4], 0x101013e
mov dword [eax + ecx - 8], 0x4b82f0
mov edx, dword [esp + 0xc]
mov dword [eax + ecx], edx
mov dword [eax + ecx + 4], ebp
jmp case.0x48f97a.84
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x1c], str.unsigned___int128
mov dword [esp + 0x20], 0x4b8209
movsd xmm0, qword [esp + 0x1c]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x64], str.short
mov dword [esp + 0x68], 0x4b81d0
movsd xmm0, qword [esp + 0x64]
jmp 0x4901ea
cmp ecx, 3
jb case.0x48f97a.84
cmp al, 0x62
jne case.0x48f97a.84
mov al, byte [ebx + 2]
cmp al, 0x30
je 0x4901fb
cmp al, 0x31
jne case.0x48f97a.84
cmp byte [ebx + 3], 0x45
jne case.0x48f97a.84
add ebx, 4
mov dword [esi], ebx
mov dword [esp + 0x10], 1
jmp 0x490212
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x7c], str.char
mov dword [esp + 0x80], 0x4b81b0
movsd xmm0, qword [esp + 0x7c]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x54], 0x4b81e0
mov dword [esp + 0x58], 0x4b81e0
movsd xmm0, qword [esp + 0x54]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x6c], str.unsigned_char
mov dword [esp + 0x70], 0x4b81ca
movsd xmm0, qword [esp + 0x6c]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x84], str.wchar_t
mov dword [esp + 0x88], 0x4b81ab
movsd xmm0, qword [esp + 0x84]
jmp 0x4901ea
add ebx, 2
mov dword [esi], ebx
mov dword [esp + 0x5c], str.unsigned_short
mov dword [esp + 0x60], 0x4b81df
movsd xmm0, qword [esp + 0x5c]
movsd qword [esp], xmm0
mov ecx, esi
call fcn.00492640
jmp 0x48fa5d
cmp byte [ebx + 3], 0x45
jne case.0x48f97a.84
add ebx, 4
mov dword [esi], ebx
mov dword [esp + 0x10], 0
lea edx, [esp + 0x10]
mov ecx, esi
call fcn.00492760
jmp 0x48fa59
call fcn.004147d0
nop word [eax + eax]