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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xd8
mov esi, ecx
mov eax, dword [ecx + 0x4f4]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x40]
mov dword [esp + 4], edx
mov dword [esp], ecx
xor eax, eax
test edx, edx
je 0x47cd28
test ecx, ecx
je 0x47c516
xor eax, eax
movzx edi, byte [ecx + eax]
cmp edi, 9
je 0x47c50d
cmp edi, 0x20
jne 0x47c51a
inc eax
cmp edx, eax
jne 0x47c4ff
xor eax, eax
jmp 0x47c52b
xor ecx, ecx
jmp 0x47c52b
sub edx, eax
xor edi, edi
cmp eax, 0xffffffff
cmove eax, edi
cmove edx, edi
add ecx, eax
mov eax, edx
lea edi, [esp + 0xc]
mov dword [edi], ecx
mov dword [edi + 4], eax
lea ebx, [esp + 0x44]
mov ecx, edi
push 2
push 0x79abbf
push ebx
call fcn.0040e69a
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [esp + 4], edx
mov dword [esp], ecx
test edx, edx
je 0x47cd26
mov ebp, dword [esp + 0xec]
movzx eax, byte [ecx]
cmp eax, 0x3d
jg 0x47c58a
cmp eax, 0x22
je 0x47c5e6
cmp eax, 0x27
jne 0x47c59e
mov eax, dword [esi + 0x4f4]
sub ecx, dword [eax + 0x2c]
mov dword [eax + 0x14], ecx
mov ecx, esi
push edi
call fcn.0047ee16
jmp 0x47c5fa
cmp eax, 0x3e
je 0x47c594
cmp eax, 0x7c
jne 0x47c59e
mov ecx, esi
push edi
call fcn.0047fe0c
jmp 0x47c5fa
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax]
test al, 1
je 0x47c5bf
call fcn.00480822
test al, al
jne 0x47cd26
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax]
test al, 8
jne 0x47c617
test al, 4
jne 0x47c6c1
test al, 2
jne 0x47c74d
call fcn.004abd0c
mov ecx, esi
push 0x16
push str.ERROR:_not_implemented
jmp 0x47c6b7
mov eax, dword [esi + 0x4f4]
sub ecx, dword [eax + 0x2c]
mov dword [eax + 0x14], ecx
mov ecx, esi
push edi
call fcn.0047f618
movsd xmm0, qword [esp + 0xc]
movsd qword [ebp], xmm0
mov al, 1
mov ecx, dword [esp + 0xf0]
mov byte [ecx], al
mov al, 1
jmp 0x47cd28
test al, 0x40
je 0x47c6a5
movaps xmm0, xmmword [0x7261f0]
movups xmmword [esp + 0xc], xmm0
movaps xmm0, xmmword [str._has_all_RKEY__]
movups xmmword [esp + 0x1c], xmm0
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], 0x919
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0xd4], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0xe4]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x20
call eax
add esp, 0x20
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax]
test al, al
js 0x47c724
call fcn.004abd0c
mov ecx, esi
push 0x15
push str.ERROR:_internal_error
call fcn.004857e6
jmp 0x47cdbf
mov dword [esp + 8], eax
mov ebp, dword [esp]
mov ebx, dword [esp + 4]
mov ecx, ebp
mov edx, ebx
call fcn.004808ec
test al, al
je 0x47cd26
cmp ebx, 2
mov edx, ebx
jb 0x47c700
lea eax, [edx - 1]
xor ebx, ebx
cmp byte [ebp + ebx], 0x3a
jne 0x47c6fb
cmp byte [ebp + ebx + 1], 0x20
je 0x47cbfd
inc ebx
cmp eax, ebx
jne 0x47c6e9
test edx, edx
je 0x47c7f7
xor eax, eax
xor ecx, ecx
dec ecx
cmp byte [ebp + eax], 0x3a
je 0x47c891
inc eax
cmp edx, eax
jne 0x47c70d
mov eax, ecx
jmp 0x47c891
mov ecx, dword [esp]
mov edx, dword [esp + 4]
call fcn.00480899
test al, al
je 0x47cd26
mov eax, dword [esp + 4]
test eax, eax
je 0x47c776
mov ecx, dword [esp]
cmp byte [ecx + eax - 1], 0x3a
jne 0x47c776
dec eax
jmp 0x47c7ad
mov ecx, dword [esp]
mov edx, dword [esp + 4]
call fcn.0048097b
test al, al
je 0x47cd26
mov eax, dword [esp + 4]
cmp eax, 1
ja 0x47ca2c
mov ecx, dword [esp]
jmp 0x47cc99
lea eax, [esp + 0x1c]
mov dword [eax - 0x10], 0x79a5bd
mov ecx, 2
mov dword [eax - 0xc], ecx
mov dword [eax - 8], 0x79a13c
mov dword [eax - 4], ecx
mov ecx, esp
push eax
push edi
push ebx
call fcn.0040f07a
cmp dword [esp + 0x44], 0xffffffff
je 0x47c7b3
mov eax, dword [esp + 0x48]
cmp eax, 0xffffffff
je 0x47c7b3
mov dword [esp + 4], eax
jmp 0x47c7b7
mov eax, dword [esp + 4]
mov ecx, dword [esi + 0x4f4]
test byte [ecx], 0x10
jne 0x47c7ca
mov ecx, dword [esp]
jmp 0x47cbc5
test eax, eax
je 0x47cbb9
xor edx, edx
mov ecx, dword [esp]
movzx ebx, byte [ecx + edx]
cmp ebx, 0x2c
je 0x47cbb1
cmp ebx, 0x5d
je 0x47cbb1
inc edx
cmp eax, edx
jne 0x47c7d7
jmp 0x47cbbe
movaps xmm0, xmmword [0x72dea0]
movups xmmword [esp + 0xc], xmm0
movsd xmm0, qword [str..len___0]
movsd qword [esp + 0x1c], xmm0
mov word [esp + 0x24], 0x29
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], 0x94c
mov dword [esp + 0xb8], edx
mov dword [esp + 0xbc], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0xc0], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0xd0]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x1a
call eax
add esp, 0x20
mov edx, dword [esp + 4]
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax]
mov dword [esp + 8], eax
xor eax, eax
dec eax
lea ecx, [edx - 1]
xor ebx, ebx
dec ebx
cmp eax, ecx
cmove ebx, eax
mov ebp, dword [esp + 0xec]
mov eax, dword [esp + 8]
test al, 0x40
jne 0x47c8c6
test al, al
js 0x47ca4f
call fcn.004abd0c
mov ecx, esi
push 0x12
push str.ERROR:_parse_error
jmp 0x47c6b7
test edx, edx
je 0x47c96c
mov eax, dword [esp]
cmp byte [eax], 0x20
mov eax, dword [esp + 8]
jne 0x47c96c
movaps xmm0, xmmword [0x7261f0]
movups xmmword [esp + 0xc], xmm0
movaps xmm0, xmmword [str.s.begins_with__check_failed:__s.begins_with_.str___m_state__line_contents.rem.str_]
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], 0x292927
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], 0x954
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0xac], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0xbc]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x24
call eax
add esp, 0x20
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax]
test al, 0x20
jne 0x47cb05
mov eax, dword [esp + 4]
mov edx, 0
test eax, eax
je 0x47ccf4
mov ecx, dword [esp]
cmp byte [ecx], 0x7b
jne 0x47ca11
movaps xmm0, xmmword [0x72df90]
movups xmmword [esp + 0xc], xmm0
movaps xmm0, xmmword [0x72dfa0]
movups xmmword [esp + 0x1c], xmm0
mov word [esp + 0x2c], 0x29
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], 0x968
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0x84], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0x94]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x22
call eax
add esp, 0x20
mov eax, dword [esp + 4]
cmp eax, 2
jae 0x47ccc7
mov edx, 0
test eax, eax
jne 0x47ccd5
jmp 0x47ccf4
mov ecx, dword [esp]
lea ebx, [eax - 1]
xor edx, edx
cmp byte [ecx + edx], 0x20
jne 0x47ca45
cmp byte [ecx + edx + 1], 0x23
je 0x47cc6c
inc edx
cmp ebx, edx
jne 0x47ca34
jmp 0x47cc72
test al, 0x20
je 0x47cae0
movaps xmm0, xmmword [str.check_failed:__has_none_]
movups xmmword [esp + 0xc], xmm0
movsd xmm0, qword [0x72dc40]
movsd qword [esp + 0x1c], xmm0
mov dword [esp + 0x24], 0x4b524d51
mov word [esp + 0x28], 0x2929
mov byte [esp + 0x2a], 0
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], 0x981
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0x70], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0x80]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x1f
call eax
add esp, 0x20
mov edx, dword [esp + 4]
mov ecx, dword [esp]
call fcn.00480932
test al, al
je 0x47cd26
mov edx, dword [esp + 4]
cmp edx, 1
ja 0x47cf03
mov ecx, dword [esp]
jmp 0x47cf21
test al, 4
jne 0x47cb9c
movaps xmm0, xmmword [str.check_failed:__has_none_]
movups xmmword [esp + 0xc], xmm0
movsd xmm0, qword [str.as_any_R]
movsd qword [esp + 0x1c], xmm0
mov dword [esp + 0x24], 0x2950414d
mov word [esp + 0x28], 0x29
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], 0x958
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0x98], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0xa8]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x1e
call eax
add esp, 0x20
mov eax, dword [esp + 4]
cmp eax, 2
jae 0x47cc0b
test eax, eax
jne 0x47cc1d
mov ecx, dword [esp]
jmp 0x47cc3d
cmp edx, 0xffffffff
cmovne eax, edx
jmp 0x47cbbe
xor eax, eax
mov ecx, dword [esp]
mov dword [esp], ecx
mov dword [esp + 4], eax
xor edx, edx
test eax, eax
je 0x47cbf1
test ecx, ecx
je 0x47cbf1
mov ebp, eax
mov ebx, eax
sub ebx, 1
jb 0x47cbea
cmp byte [ecx + ebp - 1], 0x20
mov ebp, ebx
je 0x47cbd3
lea edx, [ebx + 1]
cmp ebx, 0xfffffffe
cmove edx, eax
mov ebp, dword [esp + 0xec]
mov dword [esp], ecx
mov dword [esp + 4], edx
jmp 0x47cdbf
cmp ebx, 0xffffffff
jne 0x47c89c
jmp 0x47c700
mov ecx, dword [esp]
cmp byte [ecx], 0x3f
jne 0x47cc1d
cmp byte [ecx + 1], 0x20
je 0x47cd26
mov ecx, dword [esp]
movsx ebp, byte [ecx]
lea edx, [eax - 1]
mov dword [esp + 8], edx
lea edx, [ebp - 0x3f]
cmp ebp, 0x3f
cmove edx, dword [esp + 8]
test edx, edx
je 0x47cd26
cmp ebx, 0xffffffff
cmovne eax, ebx
mov dword [esp + 4], eax
test eax, eax
je 0x47cf53
xor edx, edx
mov ebp, dword [esp + 0xec]
cmp byte [ecx + edx], 0x23
je 0x47cf5e
inc edx
cmp eax, edx
jne 0x47cc58
jmp 0x47cf64
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp], ecx
mov dword [esp + 4], eax
cmp eax, 2
jb 0x47cc99
lea ebx, [eax - 1]
xor edx, edx
cmp byte [ecx + edx], 0x3a
jne 0x47cc94
cmp byte [ecx + edx + 1], 0x20
je 0x47cf89
inc edx
cmp ebx, edx
jne 0x47cc83
test eax, eax
je 0x47ccaa
cmp byte [ecx + eax - 1], 0x3a
jne 0x47ccb1
dec eax
jmp 0x47cd99
xor eax, eax
jmp 0x47cd99
xor edx, edx
cmp byte [ecx + edx], 0x2c
je 0x47cd93
inc edx
cmp eax, edx
jne 0x47ccb3
jmp 0x47cd99
mov ecx, dword [esp]
cmp byte [ecx], 0x3f
jne 0x47ccd5
cmp byte [ecx + 1], 0x20
je 0x47cd26
mov ecx, dword [esp]
movsx ecx, byte [ecx]
lea edx, [eax - 1]
lea ebp, [ecx - 0x3f]
cmp ecx, 0x3f
cmove ebp, edx
mov edx, eax
test ebp, ebp
mov ebp, dword [esp + 0xec]
je 0x47cd26
cmp ebx, 0xffffffff
mov ecx, dword [esp]
cmovne edx, ebx
mov dword [esp + 4], edx
test edx, edx
je 0x47cd35
test ecx, ecx
je 0x47cd35
mov ebx, edx
mov eax, edx
sub eax, 1
jb 0x47cd35
cmp byte [ecx + ebx - 1], 0x20
mov ebx, eax
je 0x47cd0d
lea ebx, [eax + 1]
cmp eax, 0xfffffffe
cmove ebx, edx
jmp 0x47cd37
xor eax, eax
add esp, 0xd8
pop esi
pop edi
pop ebx
pop ebp
ret 8
xor ebx, ebx
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov eax, dword [esi + 0x4f4]
test byte [eax], 0x10
jne 0x47cd69
cmp ebx, 3
jb 0x47cdbf
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7992c5]
jne 0x47d03b
inc edx
xor eax, eax
cmp edx, 3
jne 0x47cd50
jmp 0x47cd28
test ebx, ebx
je 0x47cfc1
xor eax, eax
movzx edx, byte [ecx + eax]
cmp edx, 0x2c
je 0x47cf97
cmp edx, 0x7d
je 0x47cf97
inc eax
cmp ebx, eax
jne 0x47cd73
jmp 0x47cfa9
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp], ecx
mov edx, eax
mov ebx, esp
mov dword [ebx + 4], edx
mov ecx, ebx
push 2
push 0x79abbf
push edi
call fcn.00485ace
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [ebx + 4], ecx
mov dword [ebx], eax
mov ecx, dword [esp + 4]
xor eax, eax
test ecx, ecx
je 0x47cd28
mov edx, dword [esp]
test edx, edx
je 0x47cd28
mov eax, dword [esi + 0x4f4]
mov ebx, edx
sub ebx, dword [eax + 0x2c]
mov dword [eax + 0x14], ebx
mov eax, dword [eax + 0x3c]
cmp edx, eax
jae 0x47ce87
movaps xmm0, xmmword [0x72dea0]
movups xmmword [esp + 0xc], xmm0
movaps xmm0, xmmword [0x72dfb0]
movups xmmword [esp + 0x1c], xmm0
movaps xmm0, xmmword [0x72dfc0]
movups xmmword [esp + 0x2c], xmm0
movsd xmm0, qword [0x72dfd0]
movsd qword [esp + 0x3c], xmm0
mov ecx, dword [esi + 0x4e4]
mov eax, dword [esi + 0x4f0]
xor edx, edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], 0x9bc
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], str.C:_Projects_VisualStudio_TMLoader_external_ryml_c4_yml_parse.cpp
mov edx, 0x40
mov dword [esp + 0x5c], edx
sub esp, 0x20
mov dword [esp + 0x18], edx
movups xmm0, xmmword [esp + 0x6c]
movups xmmword [esp + 8], xmm0
mov dword [esp + 0x1c], ecx
mov dword [esp], edi
mov dword [esp + 4], 0x38
call eax
add esp, 0x20
mov eax, dword [esi + 0x4f4]
mov eax, dword [eax + 0x3c]
mov edx, dword [esp]
mov ecx, dword [esp + 4]
sub edx, eax
add edx, ecx
mov ecx, esi
push edx
call fcn.0047a622
mov ecx, dword [esi + 0x4f4]
mov eax, dword [ecx + 0x40]
test eax, eax
je 0x47ceb4
mov ecx, dword [ecx + 0x3c]
test ecx, ecx
je 0x47ceb4
xor edx, edx
cmp byte [ecx + edx], 0x20
jne 0x47cef2
inc edx
cmp eax, edx
jne 0x47cea9
mov eax, dword [esp]
mov edx, dword [esp + 4]
test edx, edx
je 0x47ced9
movsx ecx, byte [eax]
lea ebx, [edx - 1]
lea ebp, [ecx - 0x7e]
cmp ecx, 0x7e
cmove ebp, ebx
test ebp, ebp
mov ebp, dword [esp + 0xec]
je 0x47cef2
mov ecx, esi
push edx
push eax
push edi
call fcn.0048058a
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 4], ecx
mov dword [esp], eax
movsd xmm0, qword [esp]
movsd qword [ebp], xmm0
xor eax, eax
jmp 0x47c607
mov ecx, dword [esp]
lea ebx, [edx - 1]
xor eax, eax
cmp byte [ecx + eax], 0x20
jne 0x47cf1c
cmp byte [ecx + eax + 1], 0x23
je 0x47d059
inc eax
cmp ebx, eax
jne 0x47cf0b
mov eax, edx
mov dword [esp], ecx
mov dword [esp + 4], eax
cmp eax, 2
jb 0x47d06d
lea ebx, [eax - 1]
xor edx, edx
cmp byte [ecx + edx], 9
jne 0x47cf49
cmp byte [ecx + edx + 1], 0x23
je 0x47d067
inc edx
cmp ebx, edx
jne 0x47cf38
jmp 0x47d06d
xor eax, eax
mov ebp, dword [esp + 0xec]
jmp 0x47cf64
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [esi + 0x4f4]
test byte [edx], 0x10
je 0x47cfdc
test eax, eax
je 0x47cfce
xor edx, edx
cmp byte [ecx + edx], 0x3a
je 0x47cfd2
inc edx
cmp eax, edx
jne 0x47cf7c
jmp 0x47cfd8
cmp edx, 0xffffffff
jne 0x47cd9e
jmp 0x47cc99
cmp eax, 0xffffffff
cmovne ebx, eax
mov dword [esp + 4], ebx
test ebx, ebx
je 0x47cdbf
cmp byte [ecx + ebx - 1], 0x3a
jne 0x47cdbf
dec ebx
mov dword [esp], ecx
mov dword [esp + 4], ebx
jmp 0x47cdbf
mov dword [esp + 4], 0
jmp 0x47cdbf
xor eax, eax
jmp 0x47cfd8
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp + 4], eax
mov ebx, esp
mov ecx, ebx
push 2
push 0x79abbf
push edi
call fcn.0040e69a
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [ebx + 4], eax
mov dword [ebx], ecx
cmp eax, 3
jb 0x47cdbf
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7992c5]
jne 0x47d01d
inc edx
xor eax, eax
cmp edx, 3
jne 0x47d005
jmp 0x47cd28
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7991f7]
jne 0x47cdbf
inc edx
xor eax, eax
cmp edx, 3
jne 0x47d01f
jmp 0x47cd28
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7991f7]
jne 0x47cdbf
inc edx
xor eax, eax
cmp edx, 3
jne 0x47d03d
jmp 0x47cd28
cmp eax, 0xffffffff
jne 0x47cf23
jmp 0x47cf21
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp + 4], eax
mov edx, dword [esi + 0x4f4]
mov edx, dword [edx]
test dl, 0x10
je 0x47d0c8
bt edx, 0xd
jb 0x47d09f
test eax, eax
je 0x47d0c2
xor edx, edx
movzx ebx, byte [ecx + edx]
cmp ebx, 0x2c
je 0x47d0ba
cmp ebx, 0x7d
je 0x47d0ba
inc edx
cmp eax, edx
jne 0x47d08a
jmp 0x47d0c4
test eax, eax
je 0x47d0c2
xor edx, edx
movzx ebx, byte [ecx + edx]
cmp ebx, 0x2c
je 0x47d0ba
cmp ebx, 0x5d
je 0x47d0ba
inc edx
cmp eax, edx
jne 0x47d0a5
jmp 0x47d0c4
cmp edx, 0xffffffff
cmovne eax, edx
jmp 0x47d0c4
xor eax, eax
mov dword [esp + 4], eax
mov ebx, esp
mov ecx, ebx
push 0x20
push edi
call fcn.0040e366
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [ebx + 4], eax
mov dword [ebx], ecx
cmp eax, 3
jb 0x47cdbf
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7992c5]
jne 0x47d104
inc edx
xor eax, eax
cmp edx, 3
jne 0x47d0ec
jmp 0x47cd28
xor edx, edx
mov al, byte [ecx + edx]
cmp al, byte [edx + 0x7991f7]
jne 0x47cdbf
inc edx
xor eax, eax
cmp edx, 3
jne 0x47d106
jmp 0x47cd28