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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xf0
mov edi, dword [esp + 0x104]
mov dword [esp + 4], ecx
mov eax, dword [ecx + 0x4f4]
mov esi, dword [eax + 0x3c]
mov ebx, dword [eax + 0x40]
mov dword [edi + 4], ebx
mov dword [edi], esi
test ebx, ebx
je 0x47fe70
test esi, esi
je 0x47fe70
xor eax, eax
cmp byte [esi + eax], 0x20
jne 0x47fe49
inc eax
cmp ebx, eax
jne 0x47fe3c
jmp 0x47fe74
xor ecx, ecx
cmp eax, 0xffffffff
mov edx, eax
cmove edx, ecx
test edx, edx
jle 0x47fe70
add esi, edx
sub ebx, eax
cmp eax, 0xffffffff
cmove ebx, ecx
mov ecx, dword [esp + 4]
push edx
call fcn.0047a622
mov dword [edi], esi
mov dword [edi + 4], ebx
test ebx, ebx
je 0x47fe92
movzx eax, byte [esi]
cmp eax, 0x3e
je 0x47ff5c
cmp eax, 0x7c
je 0x47ff5e
mov dword [esp], 0
jmp 0x47fe99
xor ebx, ebx
mov al, 1
mov dword [esp], eax
movaps xmm0, xmmword [0x72dea0]
lea eax, [esp + 0xa4]
movups xmmword [eax], xmm0
movaps xmm0, xmmword [str..begins_with____s.begins_with____]
movups xmmword [eax + 0x10], xmm0
movaps xmm0, xmmword [0x72e200]
movups xmmword [eax + 0x20], xmm0
movsd xmm0, qword [0x72e210]
movsd qword [eax + 0x30], xmm0
mov byte [eax + 0x38], 0
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x4e4]
mov ecx, dword [ecx + 0x4f0]
xor ebp, ebp
mov dword [esp + 0x90], ebp
mov dword [esp + 0x94], 0xf94
mov dword [esp + 0x98], ebp
mov dword [esp + 0x9c], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov esi, 0x40
mov dword [esp + 0xa0], esi
sub esp, 0x20
mov dword [esp + 0x18], esi
movups xmm0, xmmword [esp + 0xb0]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp], eax
mov dword [esp + 4], 0x39
call ecx
add esp, 0x20
cmp byte [esp], 0
je 0x47ff56
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], 0
jmp 0x480184
mov esi, dword [edi]
mov al, byte [esi]
jmp 0x47ff5e
mov al, 0x3e
cmp al, 0x3e
sete al
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xffffffff
xor ebp, ebp
cmp ebx, 2
jb 0x480184
movzx eax, byte [esi]
cmp eax, 0x3e
je 0x480023
cmp eax, 0x7c
je 0x480023
movaps xmm0, xmmword [0x72dea0]
lea eax, [esp + 0xa4]
movups xmmword [eax], xmm0
movaps xmm0, xmmword [str..begins_with_any______]
movups xmmword [eax + 0x10], xmm0
movsd xmm0, qword [0x72e230]
movsd qword [eax + 0x20], xmm0
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x4e4]
mov ecx, dword [ecx + 0x4f0]
mov ebx, edi
xor edi, edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], 0xf9f
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edi, 0x40
mov dword [esp + 0x8c], edi
sub esp, 0x20
mov dword [esp + 0x18], edi
mov edi, ebx
movups xmm0, xmmword [esp + 0x9c]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp], eax
mov dword [esp + 4], 0x28
call ecx
add esp, 0x20
mov ebp, dword [edi + 4]
mov ecx, ebp
dec ecx
je 0x48007e
lea eax, [esi + 1]
xor ebx, ebx
movzx edx, byte [eax + ebx]
cmp edx, 0x2b
je 0x48004a
cmp edx, 0x2d
je 0x48004a
inc ebx
cmp ecx, ebx
jne 0x480030
xor ebp, ebp
jmp 0x480123
cmp ebx, 0xffffffff
je 0x480108
xor ecx, ecx
cmp dl, 0x2b
sete cl
add ecx, ecx
xor edi, edi
inc edi
cmp dl, 0x2d
cmovne edi, ecx
test ebx, ebx
je 0x48010c
mov ecx, ebx
mov ebp, edi
mov edi, dword [esp + 0x104]
jmp 0x480123
movaps xmm0, xmmword [0x72dd00]
lea eax, [esp + 0xa4]
movups xmmword [eax], xmm0
movsd xmm0, qword [str..len__]
movsd qword [eax + 0x10], xmm0
mov word [eax + 0x18], 0x2931
mov byte [eax + 0x1a], 0
mov ebx, dword [esp + 4]
mov edx, dword [ebx + 0x4e4]
mov ecx, dword [ebx + 0x4f0]
xor ebp, ebp
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], 0xfa2
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov esi, 0x40
mov dword [esp + 0x78], esi
sub esp, 0x20
mov dword [esp + 0x18], esi
mov esi, ebx
movups xmm0, xmmword [esp + 0x88]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp], eax
mov dword [esp + 4], 0x1b
call ecx
add esp, 0x20
jmp 0x480188
xor ebp, ebp
jmp 0x48011f
add ebp, 0xfffffffe
add esi, 2
mov eax, esi
mov ecx, ebp
mov ebp, edi
mov edi, dword [esp + 0x104]
test ecx, ecx
je 0x480184
xor edx, edx
mov bl, byte [eax + edx]
mov esi, 0xfffffff6
cmp bl, byte [esi + 0x798341]
je 0x48013a
inc esi
jne 0x48012d
jmp 0x480141
inc edx
cmp edx, ecx
jne 0x480125
jmp 0x48014b
cmp edx, 0xffffffff
cmovne ecx, edx
test ecx, ecx
je 0x480184
lea edx, [esp + 8]
push edx
push ecx
push eax
call fcn.00485c65
add esp, 0xc
test al, al
mov esi, dword [esp + 4]
jne 0x480175
call fcn.004abd0c
mov ecx, esi
push 0x2a
push str.ERROR:_parse_error:_could_not_read_decimal
call fcn.004857e6
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax + 0x48]
add dword [esp + 8], eax
jmp 0x480188
mov esi, dword [esp + 4]
mov ecx, esi
push dword [edi + 4]
call fcn.0047a622
mov ecx, esi
call fcn.004763b8
mov ecx, esi
call fcn.00476286
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x4f4]
add ecx, dword [eax + 0x18]
mov dword [esp + 0x30], ecx
cmp ecx, dword [eax + 0x2c]
je 0x480232
mov esi, 0x49
lea ebx, [esp + 0xa4]
push esi
push str.check_failed:__raw_block.begin____m_state__line_contents.full.begin___
push ebx
call fcn.006fb4d0
add esp, 0xc
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x4e4]
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x4f0]
xor edx, edx
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], 0xfc5
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0x64], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0x74]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp + 4], esi
mov esi, dword [esp + 0x24]
mov dword [esp], ebx
call eax
add esp, 0x20
mov eax, dword [esi + 0x4f4]
mov dword [esp + 0x34], ebp
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x2c], ecx
xorps xmm0, xmm0
movups xmmword [esp + 0x1c], xmm0
movups xmmword [esp + 0x10], xmm0
mov edx, dword [eax + 0x18]
mov eax, dword [esi + 0xc]
cmp edx, eax
jae 0x480489
xor ecx, ecx
dec ecx
xor ebx, ebx
mov dword [esp], ecx
xor ebp, ebp
lea ecx, [esp + 0x10]
push edx
push eax
push dword [esi + 8]
call fcn.00481be0
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
je 0x4802b5
cmp dword [esp + 0x28], eax
jae 0x480336
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
xor ecx, ecx
test esi, esi
je 0x4802f6
test eax, eax
je 0x4802f6
xor edx, edx
mov cl, byte [eax + edx]
mov edi, 0xfffffffc
cmp cl, byte [edi + 0x79ab35]
je 0x4802ac
inc edi
jne 0x48029f
jmp 0x4802db
inc edx
xor ecx, ecx
cmp edx, esi
jne 0x480297
jmp 0x4802ef
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4803c7
xor ecx, ecx
mov edx, dword [esp + 0x18]
cmp byte [edx + ecx], 0x20
jne 0x4803a4
inc ecx
cmp eax, ecx
jne 0x4802c7
jmp 0x4803c7
sub esi, edx
cmp edx, 0xffffffff
mov ecx, 0
cmove edx, ecx
cmove esi, ecx
add eax, edx
mov ecx, esi
mov edi, dword [esp + 0x104]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
lea ecx, [esp + 0xa4]
push 4
push 0x79ab31
lea eax, [esp + 0x40]
push eax
call fcn.0040e69a
cmp dword [esp + 0x3c], 0
mov esi, dword [esp + 4]
je 0x480332
cmp dword [esp + 0x38], 0
jne 0x480493
mov eax, dword [esp + 8]
test eax, eax
jne 0x480420
lea ecx, [esp + 0x20]
push 3
push 0x7991f7
call fcn.0040e63a
test eax, eax
je 0x480493
cmp dword [esp + 0x24], 4
jae 0x4803e8
lea ecx, [esp + 0x20]
push 3
push 0x7992c5
call fcn.0040e63a
test eax, eax
je 0x480493
cmp dword [esp + 0x24], 4
jb 0x480420
xor eax, eax
mov ecx, dword [esp + 0x20]
mov dl, byte [ecx + eax]
cmp dl, byte [eax + 0x79a5c5]
jne 0x480420
inc eax
cmp eax, 4
jne 0x48038a
jmp 0x480493
cmp ecx, 0xffffffff
je 0x4803c7
mov eax, dword [esp + 0x28]
mov ecx, dword [esp]
cmp ecx, 0xffffffff
je 0x480469
cmp eax, ecx
jb 0x480493
mov dword [esp + 8], eax
jmp 0x480420
mov ecx, dword [esp]
cmp ecx, 0xffffffff
je 0x4803d6
cmp eax, ecx
cmova ecx, eax
jmp 0x48041d
mov ecx, dword [esp + 0x28]
cmp ecx, 0xffffffff
je 0x480408
mov dword [esp], ecx
test ecx, ecx
je 0x48040f
jmp 0x480420
xor eax, eax
mov ecx, dword [esp + 0x20]
mov dl, byte [ecx + eax]
cmp dl, byte [eax + str....]
jne 0x480361
inc eax
cmp eax, 4
jne 0x4803ee
jmp 0x480493
mov dword [esp], eax
test eax, eax
jne 0x480420
mov eax, dword [esi + 0x4f4]
xor ecx, ecx
test byte [eax], 0x88
setne cl
mov dword [esp], ecx
mov eax, dword [esi + 0x4f4]
movups xmm0, xmmword [esp + 0x10]
movups xmm1, xmmword [esp + 0x1c]
movups xmmword [eax + 0x38], xmm1
movups xmmword [eax + 0x2c], xmm0
mov eax, dword [esi + 0x4f4]
add ebp, dword [eax + 0x30]
mov ecx, esi
push dword [eax + 0x40]
call fcn.0047a622
mov ecx, esi
call fcn.004763b8
inc ebx
mov eax, dword [esi + 0x4f4]
mov edx, dword [eax + 0x18]
mov eax, dword [esi + 0xc]
cmp edx, eax
jb 0x480262
jmp 0x480493
mov ecx, dword [esi + 0x4f4]
cmp eax, dword [ecx + 0x48]
jne 0x48047d
test byte [ecx], 0xc
jne 0x48057e
mov dword [esp + 8], eax
xor eax, eax
dec eax
mov dword [esp], eax
jmp 0x480420
xor eax, eax
dec eax
mov dword [esp], eax
xor ebp, ebp
xor ebx, ebx
mov eax, dword [esi + 0x4f4]
mov ecx, dword [esp + 0x2c]
add ecx, ebx
cmp dword [eax + 0x1c], ecx
je 0x480538
movaps xmm0, xmmword [str.check_failed:__m_tree__is_val_idunknown]
lea eax, [esp + 0xa4]
movups xmmword [eax], xmm0
movaps xmm0, xmmword [str._state__pos.line___first__num_lines__]
movups xmmword [eax + 0x10], xmm0
movaps xmm0, xmmword [0x72e250]
movups xmmword [eax + 0x20], xmm0
movsd xmm0, qword [0x72e260]
movsd qword [eax + 0x30], xmm0
mov byte [eax + 0x38], 0
mov edx, dword [esi + 0x4e4]
mov ecx, dword [esi + 0x4f0]
xor esi, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], 0x1038
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov esi, 0x40
mov dword [esp + 0x50], esi
sub esp, 0x20
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x24]
movups xmm0, xmmword [esp + 0x60]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp], eax
mov dword [esp + 4], 0x39
call ecx
add esp, 0x20
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
jne 0x480548
mov eax, dword [esp]
mov dword [esp + 8], eax
test ebx, ebx
je 0x480557
mov ecx, esi
call fcn.00481c74
mov eax, dword [esp + 8]
movzx edx, byte [esp + 0xc]
mov ecx, esi
push eax
push dword [esp + 0x38]
push edx
push ebp
push dword [esp + 0x40]
push edi
call fcn.00482d38
mov eax, edi
add esp, 0xf0
pop esi
pop edi
pop ebx
pop ebp
ret 4
xor eax, eax
dec eax
mov dword [esp], eax
jmp 0x480493