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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa8
mov edi, edx
mov esi, ecx
call fcn.004ef8e4
test al, al
je 0x4f1218
mov byte [esi + 0xec], 1
and dword [esp + 0x34], 0
mov dword [esp + 0x18], edi
push 0x10
pop ebx
mov ecx, ebx
xor edx, edx
call fcn.004e7c40
lea ecx, [eax + 0x10]
xorps xmm0, xmm0
mov dword [esp + 8], eax
mov dword [esp + 0x10], eax
xor edx, edx
mov dword [esp + 0xc], ecx
mov ecx, ebx
movsd qword [eax + 8], xmm0
movsd qword [eax], xmm0
call fcn.004e7c40
mov dword [esp + 0x1c], eax
mov edi, eax
xorps xmm0, xmm0
mov dword [esp + 0x24], eax
add eax, 0x10
mov ecx, ebx
xor edx, edx
mov dword [esp + 0x20], eax
movsd qword [edi + 8], xmm0
movsd qword [edi], xmm0
call fcn.004e7c40
xorps xmm0, xmm0
lea ecx, [eax + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
movsd qword [eax + 8], xmm0
movsd qword [eax], xmm0
mov ecx, esi
movsd xmm0, qword [esi + 0xb0]
movsd qword [esp + 0x48], xmm0
movsd xmm0, qword [esi + 0xa0]
movsd xmm1, qword [esi + 0xa8]
movsd qword [esp + 0x40], xmm1
movsd qword [esp + 0x38], xmm0
call fcn.004ef616
sub esp, 4
and dword [esp], 0
xor edx, edx
mov ecx, esi
inc edx
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
mov eax, dword [esi + 0x70]
lea ecx, [esi + 0xa0]
mov dword [esp + 4], ecx
movzx eax, byte [eax]
cmp eax, 0x2b
je 0x4f0ce3
cmp eax, 0x2d
jne 0x4f0d6c
xor ebx, ebx
cmp al, 0x2b
mov ecx, esi
sete byte [esp + 0x14]
call fcn.004ef616
sub esp, 4
and dword [esp], 0
xor edx, edx
mov ecx, esi
inc edx
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
mov al, byte [esp + 0x14]
mov bl, al
mov eax, dword [esi + 0x70]
lea ecx, [ebx + ebx - 1]
mov al, byte [eax]
mov ebx, eax
add bl, 0xd0
cmp bl, 9
ja 0x4f0dcc
cmp al, 0x30
jne 0x4f0e22
mov dword [esi], 3
mov dword [esi + 0x30], str.while_scanning_a_block_scalar
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
movsd qword [esi + 0x38], xmm0
movsd qword [esi + 0x40], xmm1
movsd xmm0, qword [esp + 0x48]
movsd qword [esi + 0x48], xmm0
mov dword [esi + 4], str.found_an_indentation_indicator_equal_to_0
jmp 0x4f11d4
mov ebx, eax
add bl, 0xd0
cmp bl, 0xa
jae 0x4f0dd2
cmp al, 0x30
jne 0x4f0dde
mov dword [esi], 3
mov dword [esi + 0x30], str.while_scanning_a_block_scalar
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
movsd qword [esi + 0x38], xmm0
movsd qword [esi + 0x40], xmm1
movsd xmm0, qword [esp + 0x48]
movsd qword [esi + 0x48], xmm0
mov dword [esi + 4], str.found_an_indentation_indicator_equal_to_0
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
movsd qword [esi + 0x18], xmm0
movsd qword [esi + 0x20], xmm1
movsd xmm0, qword [ecx + 0x10]
jmp 0x4f11f0
mov dword [esp + 0x14], ecx
jmp 0x4f0dda
mov dword [esp + 0x14], 0
xor ebx, ebx
jmp 0x4f0e2d
mov ecx, esi
mov dword [esp + 0x14], 0
call fcn.004ef616
sub esp, 4
and dword [esp], 0
xor edx, edx
mov ecx, esi
inc edx
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
mov eax, dword [esi + 0x70]
movzx eax, byte [eax]
cmp eax, 0x2d
je 0x4f0e17
cmp eax, 0x2b
jne 0x4f0e2d
xor ecx, ecx
cmp al, 0x2b
sete cl
lea ecx, [ecx + ecx - 1]
mov dword [esp + 0x14], ecx
mov ecx, esi
call fcn.004ef616
sub esp, 4
and dword [esp], 0
xor edx, edx
mov ecx, esi
inc edx
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
movzx eax, bl
xor ebx, ebx
inc ebx
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x70]
movzx ecx, byte [eax]
cmp ecx, 9
je 0x4f0e61
cmp ecx, 0x20
jne 0x4f0e7d
mov ecx, esi
call fcn.004ef616
mov ecx, esi
mov edx, ebx
push 0
call fcn.004eee34
pop ecx
test al, al
jne 0x4f0e51
jmp 0x4f11f5
cmp ecx, 0x23
jne 0x4f0edd
mov ebx, 0x2401
mov eax, dword [esi + 0x70]
movzx ecx, byte [eax]
cmp ecx, 0xc2
je 0x4f0ea9
cmp ecx, 0xe2
je 0x4f0eb1
cmp ecx, 0xd
ja 0x4f0ec0
bt ebx, ecx
jae 0x4f0ec0
jmp 0x4f0edd
cmp byte [eax + 1], 0x85
jne 0x4f0ec0
jmp 0x4f0f24
cmp byte [eax + 1], 0x80
jne 0x4f0ec0
mov al, byte [eax + 2]
and al, 0xfe
cmp al, 0xa8
je 0x4f0f24
mov ecx, esi
call fcn.004ef616
xor edx, edx
mov ecx, esi
inc edx
push 0
call fcn.004eee34
pop ecx
test al, al
jne 0x4f0e87
jmp 0x4f11f5
test cl, cl
je 0x4f0f40
movzx ecx, cl
cmp ecx, 0xa
je 0x4f0f24
cmp ecx, 0xd
je 0x4f0f24
cmp ecx, 0xe2
je 0x4f0f0d
cmp ecx, 0xc2
jne 0x4f119f
cmp byte [eax + 1], 0x85
je 0x4f0f24
jmp 0x4f119f
cmp byte [eax + 1], 0x80
jne 0x4f119f
mov al, byte [eax + 2]
and al, 0xfe
cmp al, 0xa8
jne 0x4f119f
push 2
pop edx
mov ecx, esi
push 0
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
mov ecx, esi
call fcn.004ef6a8
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x54]
movsd xmm0, qword [eax + 0x10]
test edx, edx
movsd qword [esp + 0x68], xmm0
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0x60], xmm1
movsd qword [esp + 0x58], xmm0
je 0x4f0f7f
mov eax, dword [esi + 0xe8]
xor ecx, ecx
test eax, eax
cmovg ecx, eax
add ecx, edx
mov dword [esp + 0x34], ecx
lea eax, [esp + 0x58]
lea ebx, [esp + 0x38]
lea edx, [esp + 0x34]
mov ecx, esi
push eax
push ebx
lea eax, [esp + 0x30]
push eax
call fcn.004f2253
add esp, 0xc
test al, al
je 0x4f11f5
sub esp, 4
and dword [esp], 0
xor edx, edx
mov ecx, esi
inc edx
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
xor ebx, ebx
lea edx, [esp + 0x10]
mov eax, dword [esp + 0x34]
cmp eax, dword [esi + 0xb0]
jne 0x4f12d9
mov eax, dword [esi + 0x70]
movzx ecx, byte [eax]
xor eax, eax
cmp ecx, 9
je 0x4f0ff0
cmp ecx, 0x20
je 0x4f0ff0
test ecx, ecx
je 0x4f12d9
mov al, 1
mov edi, dword [esp + 0x1c]
cmp byte [esp + 0x18], 0
jne 0x4f106f
cmp byte [edi], 0xa
sete cl
test ebx, ebx
sete dl
and dl, cl
test al, dl
lea edx, [esp + 0x10]
je 0x4f106f
mov ebx, dword [esp + 0x28]
cmp byte [ebx], 0
jne 0x4f1047
mov eax, dword [esp + 0x10]
lea ecx, [eax + 5]
cmp ecx, dword [esp + 0xc]
jb 0x4f103d
lea eax, [esp + 0xc]
lea ecx, [esp + 8]
lea edx, [esp + 0x10]
push eax
call fcn.004f21f2
pop eax
mov eax, dword [esp + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], ecx
mov byte [eax], 0x20
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0x20]
sub eax, edi
push eax
push 0
push edi
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [esp + 4], ebx
lea ebx, [esp + 0xc]
lea edx, [esp + 0x10]
lea ecx, [esp + 8]
jmp 0x4f10b0
lea ecx, [esp + 8]
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x20]
push eax
lea ebx, [esp + 0x14]
push ebx
call fcn.004f2192
add esp, 0xc
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0x20]
sub eax, edi
push eax
push 0
push edi
call sub.msvcrt.dll_memset
lea ecx, [esp + 0x14]
lea edx, [esp + 0x1c]
add esp, 0xc
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x2c]
push eax
push ebx
call fcn.004f2192
add esp, 0xc
mov ecx, dword [esp + 4]
mov dword [esp + 0x30], ecx
mov eax, dword [esp + 0x2c]
sub eax, ecx
push eax
push 0
push ecx
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [esi + 0x70]
mov al, byte [eax]
cmp al, 0x20
sete cl
cmp al, 9
sete al
or al, cl
movzx ebx, al
mov eax, dword [esi + 0x70]
movzx ecx, byte [eax]
cmp ecx, 0xc2
je 0x4f1118
cmp ecx, 0xe2
je 0x4f1120
cmp ecx, 0xd
ja 0x4f112f
mov eax, 0x2401
bt eax, ecx
jae 0x4f112f
jmp 0x4f1150
cmp byte [eax + 1], 0x85
jne 0x4f112f
jmp 0x4f1150
cmp byte [eax + 1], 0x80
jne 0x4f112f
mov al, byte [eax + 2]
and al, 0xfe
cmp al, 0xa8
je 0x4f1150
mov ecx, esi
lea edx, [esp + 8]
call fcn.004ef98f
xor edx, edx
mov ecx, esi
inc edx
push 0
call fcn.004eee34
pop ecx
test al, al
jne 0x4f10f1
jmp 0x4f11f5
mov ecx, esi
push 2
pop edx
push 0
call fcn.004eee34
pop ecx
test al, al
je 0x4f11f5
mov ecx, esi
lea edx, [esp + 0x1c]
call fcn.004f2034
lea edx, [esp + 0x34]
lea eax, [esp + 0x58]
mov ecx, esi
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x30]
push eax
call fcn.004f2253
add esp, 0xc
test al, al
lea edx, [esp + 0x10]
jne 0x4f0fc4
mov edi, dword [esp + 0x1c]
jmp 0x4f11f5
mov dword [esi], 3
mov dword [esi + 0x30], str.while_scanning_a_block_scalar
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
movsd qword [esi + 0x38], xmm0
movsd qword [esi + 0x40], xmm1
movsd xmm0, qword [esp + 0x48]
movsd qword [esi + 0x48], xmm0
mov dword [esi + 4], str.did_not_find_expected_comment_or_line_break
mov eax, dword [esp + 4]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
movsd qword [esi + 0x18], xmm0
movsd qword [esi + 0x20], xmm1
movsd xmm0, qword [eax + 0x10]
movsd qword [esi + 0x28], xmm0
mov ecx, dword [esp + 8]
call fcn.004e7d57
mov ecx, edi
call fcn.004e7d57
mov ecx, dword [esp + 0x28]
call fcn.004e7d57
mov eax, 0x519d48
cmp byte [eax], 0
je 0x4f1222
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esi + 0xcc]
lea edi, [esi + 0xcc]
cmp eax, dword [esi + 0xc4]
jne 0x4f1257
lea eax, [esi + 0xc4]
lea ecx, [esi + 0xc0]
lea edx, [esi + 0xc8]
push eax
push edi
call fcn.004e80eb
pop eax
pop ecx
mov eax, dword [esi + 0xcc]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 4]
mov dword [eax], 0x15
and dword [eax + 4], 0
mov dword [eax + 8], ecx
and dword [eax + 0xc], 0
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edx
mov dword [eax + 0x18], ebx
and dword [eax + 0x1c], 0
movsd xmm0, qword [esp + 0x98]
movsd qword [eax + 0x30], xmm0
movsd xmm0, qword [esp + 0x88]
movsd xmm1, qword [esp + 0x90]
movsd qword [eax + 0x28], xmm1
movsd qword [eax + 0x20], xmm0
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
movsd qword [eax + 0x38], xmm0
movsd qword [eax + 0x40], xmm1
movsd xmm0, qword [esp + 0x80]
movsd qword [eax + 0x48], xmm0
add dword [edi], 0x50
mov al, 1
jmp 0x4f121a
mov edi, dword [esp + 0x14]
cmp edi, 0xffffffff
je 0x4f1335
mov ebx, edx
lea eax, [esp + 0x24]
lea ecx, [esp + 8]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.004f2192
add esp, 0xc
cmp edi, 1
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jne 0x4f1331
mov dword [esp + 4], edx
mov edx, ebx
lea eax, [esp + 0x30]
lea ecx, [esp + 8]
push eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.004f2192
mov edx, dword [esp + 0x10]
add esp, 0xc
mov ebx, edi
jmp 0x4f133d
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
movsd xmm1, qword [esp + 0x40]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x48]
movsd xmm3, qword [esp + 0x38]
movsd xmm2, qword [esp + 0x58]
movzx ebx, bl
xor ebx, 5
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x60]
sub eax, ecx
mov dword [esp + 0x14], ecx
mov ecx, edx
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x88], xmm3
movsd qword [esp + 0x70], xmm2
mov dword [esp + 0x18], eax
sar eax, 0x1f
mov dword [esp + 4], eax
movsd qword [esp + 0x78], xmm1
movsd xmm1, qword [esp + 0x68]
movsd qword [esp + 0x80], xmm1
call fcn.004e7d57
mov ecx, dword [esp + 0x28]
call fcn.004e7d57
mov eax, 0x518f2f
jmp 0x4f1213