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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x118
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], edx
mov dword [esp], ecx
lea ecx, [esp + 0x28]
lea edx, [esp + 0xa8]
mov dword [esp + 0xa8], 0x7b
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], 1
mov dword [esp + 0xc0], 0x7b
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], 1
call fcn.004393e0
cmp dword [esp + 0x28], 0
je 0x437d94
mov edx, dword [esp + 0xc4]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
add esi, edx
sub eax, edx
mov dword [esp + 0xc4], ecx
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x28]
mov edx, dword [edi]
push eax
push esi
mov esi, edi
push dword [edi + 4]
call fcn.00437c10
add esp, 0xc
movzx eax, byte [esp + 0x28]
cmp al, 4
je 0x437da6
mov ecx, dword [esp + 0x29]
mov edx, dword [esp + 0x2c]
mov esi, dword [esp]
mov dword [esi + 4], edx
mov dword [esi + 1], ecx
mov byte [esi], al
jmp 0x4391eb
cmp byte [esp + 0xcd], 0
je 0x4391f3
mov esi, dword [esp + 0x18]
movsd xmm2, qword [esp + 0xc0]
movsd xmm1, qword [esp + 0xb8]
movq xmm0, qword [esp + 0xc8]
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0xf8], xmm1
movsd xmm2, qword [esp + 0xa8]
movq xmm1, qword [esp + 0xb0]
movq qword [esp + 0x108], xmm0
movq qword [esp + 0xf0], xmm1
movsd qword [esp + 0xe8], xmm2
jmp 0x437e38
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp edx, 4
jne 0x439317
add ecx, 4
mov edx, dword [esi]
mov ebx, ecx
mov ecx, edi
push eax
push ebx
push dword [esi + 4]
call fcn.00437c10
add esp, 0xc
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
cmp byte [esp + 0x10d], 0
jne 0x4391e5
mov edi, esi
mov esi, dword [esp + 0xec]
lea ecx, [esp + 0x28]
lea edx, [esp + 0xe8]
call fcn.004393e0
cmp dword [esp + 0x28], 0
je 0x437ee0
mov ecx, dword [esp + 0x104]
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
add esi, ecx
sub ebx, ecx
mov dword [esp + 0x104], eax
mov edx, esi
mov esi, edi
lea edi, [esp + 0x28]
cmp ebx, 5
mov dword [esp + 0x10], edx
jae 0x437f42
cmp ebx, 4
jne 0x437ea6
cmp dword [edx], 0x7d6e6962
je 0x437f98
mov edx, dword [esi]
mov ecx, edi
push 1
push 0x57b849
push dword [esi + 4]
call fcn.00437c10
add esp, 0xc
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov edx, dword [esi]
mov ecx, edi
push ebx
push dword [esp + 0x14]
jmp 0x437e20
cmp byte [esp + 0x10d], 0
mov esi, edi
lea edi, [esp + 0x28]
jne 0x4391e5
mov byte [esp + 0x10d], 1
cmp byte [esp + 0x10c], 0
je 0x437f16
mov edx, dword [esp + 0x104]
mov ebx, dword [esp + 0x108]
jmp 0x437f2c
mov edx, dword [esp + 0x104]
mov ebx, dword [esp + 0x108]
cmp ebx, edx
je 0x4391e5
sub ebx, edx
add edx, dword [esp + 0xec]
cmp ebx, 5
mov dword [esp + 0x10], edx
jb 0x437e95
mov eax, dword [edx]
mov ecx, 0x656d616e
xor eax, ecx
movzx ecx, byte [edx + 4]
xor ecx, 0x7d
or ecx, eax
je 0x4380a7
cmp dword [edx], 0x7d6e6962
je 0x437f98
cmp ebx, 8
jae 0x438511
cmp ebx, 7
jne 0x4385b9
mov eax, dword [edx]
mov ecx, 0x68747561
xor eax, ecx
mov ecx, dword [edx + 3]
mov edx, 0x7d726f68
xor ecx, edx
mov edx, dword [esp + 0x10]
or ecx, eax
jne 0x438672
jmp 0x4385c7
mov eax, dword [esi + 0xc]
mov edx, 0
mov dword [esp + 0x1c], ebx
mov ecx, dword [eax + 0x14c]
cmp dword [eax + 0x148], 0x80000000
mov esi, ecx
cmove esi, edx
mov dword [esp + 0x20], esi
jne 0x438391
mov edx, dword [eax + 0xf8]
mov eax, dword [eax + 0xfc]
mov dword [esp + 4], 0
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov ecx, edi
mov dword [esp + 0x20], edx
push 3
push 0x5700f8
mov dword [esp + 0x2c], eax
push eax
call fcn.00470500
add esp, 0xc
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x14], 1
jmp 0x438029
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
lea edi, [esp + 0x28]
mov byte [eax + esi], 0xa
inc esi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], esi
lea ecx, [esp + 0x70]
mov edx, edi
call fcn.00439600
cmp dword [esp + 0x70], 0
je 0x4383d2
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x78]
sub edi, ebx
sub ecx, esi
mov dword [esp + 0x6c], eax
cmp ecx, edi
jb 0x43808e
mov eax, dword [esp + 0x14]
add ebx, dword [esp + 0x20]
add eax, esi
push edi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0xc], esi
cmp dword [esp + 4], esi
jne 0x438010
lea ecx, [esp + 4]
mov edx, esi
push 1
call fcn.004b7d20
add esp, 4
mov esi, dword [esp + 0xc]
jmp 0x438010
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov eax, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x43805b
mov eax, dword [esi + 0xc]
mov dword [esp + 0x1c], ebx
cmp dword [eax + 0x13c], 0x80000000
lea ecx, [eax + 0x140]
lea edx, [eax + 0xf8]
cmove ecx, edx
lea edx, [eax + 0x144]
lea eax, [eax + 0xfc]
cmovne eax, edx
mov edx, dword [ecx]
mov ecx, edi
mov eax, dword [eax]
mov dword [esp + 4], 0
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x20], edx
push 3
push 0x5700f8
mov dword [esp + 0x2c], eax
push eax
call fcn.00470500
add esp, 0xc
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x14], 1
jmp 0x438139
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
lea edi, [esp + 0x28]
mov byte [eax + esi], 0xa
inc esi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], esi
lea ecx, [esp + 0x70]
mov edx, edi
call fcn.00439600
cmp dword [esp + 0x70], 0
je 0x4381b3
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x78]
sub edi, ebx
sub ecx, esi
mov dword [esp + 0x6c], eax
cmp ecx, edi
jb 0x43819a
mov eax, dword [esp + 0x14]
add ebx, dword [esp + 0x20]
add eax, esi
push edi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0xc], esi
cmp dword [esp + 4], esi
jne 0x438120
lea ecx, [esp + 4]
mov edx, esi
push 1
call fcn.004b7d20
add esp, 4
mov esi, dword [esp + 0xc]
jmp 0x438120
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov eax, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x438167
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 4]
sub edi, ebx
sub eax, esi
cmp eax, edi
jb 0x4388f6
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
add ecx, esi
add eax, ebx
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x18]
add esi, edi
mov edx, dword [esp + 4]
mov edi, dword [esp + 8]
lea ecx, [esp + 0x70]
mov dword [esp + 0x28], 0xa
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], 1
mov dword [esp + 0x40], 0xa
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], esi
mov dword [esp + 0x14], edx
mov word [esp + 0x4c], 0
mov dword [esp + 0x50], ecx
lea ecx, [esp + 4]
lea edx, [esp + 0x28]
mov dword [esp + 0x88], eax
mov dword [esp + 0x78], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x84], 0
mov byte [esp + 0x94], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x70], 0
call fcn.0042f550
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0xc]
lea ecx, [esp + 0x98]
mov edx, esi
push 1
push 0x58030d
push ebx
call fcn.004532b0
add esp, 0xc
test ebx, ebx
je 0x4382ed
add esi, 4
jmp 0x4382d6
add esi, 0xc
dec ebx
je 0x4382ed
cmp dword [esi - 4], 0
je 0x4382d0
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4382d0
cmp dword [esp + 4], 0
je 0x438305
push dword [esp + 8]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x14], 0
mov esi, dword [esp + 0x18]
je 0x43831e
push edi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esi]
mov eax, esi
mov esi, dword [esp + 0x9c]
lea edi, [esp + 0x28]
mov ecx, edi
push dword [esp + 0xa0]
push esi
push dword [eax + 4]
call fcn.004397f0
add esp, 0xc
movzx ebx, byte [esp + 0x28]
cmp bl, 4
jne 0x43927a
cmp dword [esp + 0x98], 0
je 0x438368
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp + 0x1c]
cmp edx, 5
jbe 0x438566
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
cmp byte [ecx + 5], 0xbf
jle 0x439324
add edx, 0xfffffffb
mov eax, edx
jmp 0x438579
mov esi, dword [eax + 0x150]
cmp esi, 7
mov dword [esp + 0x24], esi
ja 0x438581
test esi, esi
je 0x438d9d
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
nop word cs:[eax + eax]
nop
cmp byte [ecx], 0x20
je 0x438ff7
inc ecx
dec edx
jne 0x4383c0
jmp 0x438d9d
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 4]
sub edi, ebx
sub eax, esi
cmp eax, edi
jb 0x438b1e
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
add ecx, esi
add eax, ebx
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x18]
add esi, edi
mov edx, dword [esp + 4]
mov edi, dword [esp + 8]
lea ecx, [esp + 0x70]
mov dword [esp + 0x28], 0xa
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], 1
mov dword [esp + 0x40], 0xa
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], esi
mov dword [esp + 0x14], edx
mov word [esp + 0x4c], 0
mov dword [esp + 0x50], ecx
lea ecx, [esp + 4]
lea edx, [esp + 0x28]
mov dword [esp + 0x88], eax
mov dword [esp + 0x78], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x84], 0
mov byte [esp + 0x94], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x70], 0
call fcn.0042f550
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0xc]
lea ecx, [esp + 0x98]
mov edx, esi
push 1
push 0x58030d
push ebx
call fcn.004532b0
add esp, 0xc
test ebx, ebx
je 0x438fbd
add esi, 4
jmp 0x4384fa
add esi, 0xc
dec ebx
je 0x438fbd
cmp dword [esi - 4], 0
je 0x4384f0
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4384f0
mov eax, dword [edx]
mov ecx, 0x73726576
mov dword [esp + 0x1c], ebx
mov ebx, edx
xor eax, ecx
mov ecx, dword [edx + 4]
mov edx, 0x7d6e6f69
xor ecx, edx
or ecx, eax
je 0x438606
mov eax, dword [ebx]
mov ecx, 0x68747561
mov edx, 0x7d726f68
xor eax, ecx
mov ecx, dword [ebx + 3]
xor ecx, edx
mov edx, ebx
mov ebx, dword [esp + 0x1c]
or ecx, eax
je 0x4385c7
cmp ebx, 0x14
jae 0x43862a
cmp ebx, 0xf
jae 0x438656
jmp 0x438672
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp edx, 5
jne 0x439324
add ecx, 5
jmp 0x437e18
lea edx, [ecx + 3]
and edx, 0xfffffffc
sub edx, ecx
je 0x438620
cmp edx, esi
cmovae edx, esi
test edx, edx
je 0x438620
mov esi, ecx
mov edi, edx
cmp byte [esi], 0x20
je 0x438ff7
inc esi
dec edi
jne 0x4385a0
mov esi, dword [esp + 0x24]
add esi, 0xfffffff8
jmp 0x438d40
cmp ebx, 6
jb 0x437ea6
jmp 0x438672
mov ecx, edi
mov edx, esi
push 0
push 0
call fcn.004398e0
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 8
jb 0x4385fe
cmp byte [ecx + 7], 0xbf
jle 0x439340
add ebx, 0xfffffff9
mov eax, ebx
add ecx, 7
jmp 0x437e18
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x70]
test eax, eax
je 0x43876f
mov ebx, dword [esp + 0x1c]
add edx, 0x74
jmp 0x438783
add esi, 0xfffffff8
xor edx, edx
jmp 0x438d44
movdqu xmm0, xmmword [edx]
movd xmm1, dword [edx + 0x10]
pcmpeqb xmm0, xmmword [str.author_with_newlut_with_newlineabout_with_newli]
pcmpeqb xmm1, xmmword [str.ine]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x438a2c
push 0xf
push edx
push 0x5702a4
call sub.msvcrt.dll_memcmp
mov edx, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
je 0x4389ed
mov eax, dword [edx]
mov ecx, 0x756f6261
xor eax, ecx
movzx ecx, word [edx + 4]
xor ecx, 0x7d74
or ecx, eax
je 0x438698
cmp ebx, 0x13
jae 0x4386ba
cmp ebx, 0xe
jae 0x4386e6
jmp 0x438722
mov ecx, edi
mov edx, esi
push 0
push 0
call fcn.00439a70
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
je 0x4389cb
jmp 0x437d7c
movdqu xmm0, xmmword [edx]
movdqu xmm1, xmmword [edx + 3]
pcmpeqb xmm0, xmmword [0x56e340]
pcmpeqb xmm1, xmmword [0x56e330]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x438959
mov dword [esp + 0x1c], ebx
push 0xe
push edx
push 0x5702cc
mov ebx, edx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x438912
push 0xe
push ebx
push 0x5702da
call sub.msvcrt.dll_memcmp
add esp, 0xc
mov edx, ebx
mov ebx, dword [esp + 0x1c]
test eax, eax
je 0x438ad9
mov eax, dword [edx]
mov ecx, 0x67617375
xor eax, ecx
movzx ecx, word [edx + 4]
xor ecx, 0x7d65
or ecx, eax
je 0x438998
cmp ebx, 9
jae 0x438a6b
cmp ebx, 8
jb 0x437ea6
mov eax, dword [edx]
mov ecx, 0x6974706f
xor eax, ecx
mov ecx, dword [edx + 4]
mov edx, 0x7d736e6f
xor ecx, edx
or ecx, eax
jne 0x437ea6
jmp 0x438b3a
mov eax, dword [edx + 0x78]
mov ecx, ebx
mov ebx, dword [esp + 0x1c]
test eax, eax
je 0x4388cd
add edx, 0x7c
mov ecx, dword [edx]
mov edx, dword [esi + 8]
mov dword [esp + 0x28], 0xa
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x70]
mov dword [esp + 0x88], edx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x40], 0xa
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], ecx
lea ecx, [esp + 4]
mov edx, edi
mov dword [esp + 0x78], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x84], 0
mov byte [esp + 0x94], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov word [esp + 0x4c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x50], eax
call fcn.0042f550
mov esi, dword [esp + 8]
mov edi, dword [esp + 0xc]
lea ecx, [esp + 0x98]
mov edx, esi
push 1
push 0x58030d
push edi
call fcn.004532b0
add esp, 0xc
test edi, edi
je 0x43887d
add esi, 4
jmp 0x438866
add esi, 0xc
dec edi
je 0x43887d
cmp dword [esi - 4], 0
je 0x438860
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x438860
cmp dword [esp + 4], 0
je 0x438895
push dword [esp + 8]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x98]
lea ecx, [esp + 0xe0]
mov edx, dword [esi]
push eax
push dword [esi + 4]
call fcn.00439890
add esp, 8
movzx eax, byte [esp + 0xe0]
lea edi, [esp + 0x28]
cmp al, 4
jne 0x4392c6
mov ecx, dword [esp + 0x10]
cmp ebx, 8
jbe 0x4388e3
cmp byte [ecx + 8], 0xbf
jle 0x439331
add ebx, 0xfffffff8
mov eax, ebx
jmp 0x4388ee
xor eax, eax
cmp ebx, 8
jne 0x439331
add ecx, 8
jmp 0x437e18
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x4381cb
mov ecx, edi
mov edx, esi
push 1
push 1
call fcn.00439a70
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp edx, 0xf
jb 0x438b16
cmp byte [ecx + 0xe], 0xbf
jle 0x43935e
add edx, 0xfffffff2
add ecx, 0xe
mov eax, edx
jmp 0x437e18
mov ecx, edi
mov edx, esi
push 1
push 0
call fcn.00439a70
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 0x14
jb 0x438990
cmp byte [ecx + 0x13], 0xbf
jle 0x43936b
add ebx, 0xffffffed
mov eax, ebx
add ecx, 0x13
jmp 0x437e18
mov edx, dword [esi + 0x10]
mov ecx, edi
push 0
push str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
call fcn.004653e0
add esp, 8
mov edx, dword [esi]
lea ecx, [esp + 0x70]
push edi
push dword [esi + 4]
call fcn.00439890
add esp, 8
movzx eax, byte [esp + 0x70]
cmp al, 4
jne 0x4392d9
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 7
jb 0x4389e5
cmp byte [ecx + 6], 0xbf
jle 0x43934f
add ebx, 0xfffffffa
mov eax, ebx
add ecx, 6
jmp 0x437e18
mov ecx, edi
mov edx, esi
push 1
push 1
call fcn.004398e0
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 0x10
jb 0x438a24
cmp byte [ecx + 0xf], 0xbf
jle 0x43937a
add ebx, 0xfffffff1
mov eax, ebx
add ecx, 0xf
jmp 0x437e18
mov ecx, edi
mov edx, esi
push 1
push 0
call fcn.004398e0
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 0x15
jb 0x438a63
cmp byte [ecx + 0x14], 0xbf
jle 0x439389
add ebx, 0xffffffec
mov eax, ebx
add ecx, 0x14
jmp 0x437e18
mov dword [esp + 0x1c], ebx
push 9
push edx
push 0x5702ee
mov ebx, edx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x438ba7
mov eax, dword [ebx]
mov ecx, 0x6974706f
mov edx, 0x7d736e6f
xor eax, ecx
mov ecx, dword [ebx + 4]
xor ecx, edx
or ecx, eax
mov eax, ebx
mov ebx, dword [esp + 0x1c]
je 0x438b3a
cmp ebx, 0xc
jae 0x438be3
cmp ebx, 0xb
jne 0x437ea6
push 0xb
push eax
push 0x570317
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x437ea6
jmp 0x438cb2
mov edx, dword [esi]
mov ecx, edi
push 6
push str.USAGE:
push dword [esi + 4]
call fcn.00439c60
add esp, 0xc
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 0xf
jb 0x438b16
cmp byte [ecx + 0xe], 0xbf
jle 0x439398
add ebx, 0xfffffff2
mov eax, ebx
add ecx, 0xe
jmp 0x437e18
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x4383ea
mov eax, dword [esi + 0xc]
mov ecx, edi
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x28]
lea eax, [eax + eax*4]
shl eax, 6
add eax, edx
push eax
call fcn.0042ea60
add esp, 4
mov edx, esi
mov esi, dword [esp + 0x2c]
lea ecx, [esp + 0x70]
push dword [esp + 0x30]
push esi
call fcn.0043b430
add esp, 8
movzx eax, byte [esp + 0x70]
cmp al, 4
jne 0x4392e6
cmp dword [esp + 0x28], 0
je 0x438b8f
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 9
jae 0x4388d2
jmp 0x4388ee
mov ecx, edi
mov edx, esi
call fcn.00439d00
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp edx, 0xa
jb 0x438bdb
cmp byte [ecx + 9], 0xbf
jle 0x4393a7
add edx, 0xfffffff7
mov eax, edx
add ecx, 9
jmp 0x437e18
push 0xc
push eax
push 0x5702ff
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x438c57
push 0xc
push dword [esp + 0x14]
push 0x57030b
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x438cea
push 0xb
push dword [esp + 0x14]
push 0x570317
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x10]
je 0x438cb2
push 0xc
push eax
push 0x570322
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x437ea6
mov ecx, edi
mov edx, esi
call fcn.0043d5a0
jmp 0x438d05
mov eax, dword [esi + 0xc]
mov ecx, edi
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x28]
lea eax, [eax + eax*4]
shl eax, 6
add eax, edx
push eax
call fcn.0042eba0
add esp, 4
mov edx, esi
mov esi, dword [esp + 0x2c]
lea ecx, [esp + 0x70]
push dword [esp + 0x30]
push esi
call fcn.0043b430
add esp, 8
movzx eax, byte [esp + 0x70]
cmp al, 4
jne 0x4392e6
cmp dword [esp + 0x28], 0
je 0x438cac
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [esp + 0x18]
jmp 0x438d12
mov ecx, edi
mov edx, esi
call fcn.0043d250
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
mov ecx, dword [esp + 0x10]
xor eax, eax
cmp ebx, 0xc
jb 0x438ce2
cmp byte [ecx + 0xb], 0xbf
jle 0x4393c3
add ebx, 0xfffffff5
mov eax, ebx
add ecx, 0xb
jmp 0x437e18
mov eax, dword [esi + 0xc]
mov ecx, edi
mov edx, esi
push dword [eax + 0x12c]
push dword [eax + 0x128]
call fcn.0043c240
add esp, 8
movzx eax, byte [esp + 0x28]
cmp al, 4
jne 0x437d7c
xor eax, eax
cmp ebx, 0xd
mov ecx, dword [esp + 0x10]
jb 0x438d2c
cmp byte [ecx + 0xc], 0xbf
jle 0x4393b4
add ebx, 0xfffffff4
mov eax, ebx
add ecx, 0xc
jmp 0x437e18
cmp edx, esi
ja 0x438d7f
movq xmm0, qword [ecx + edx]
movdqa xmm1, xmm0
pxor xmm1, xmmword [0x56e350]
paddd xmm1, xmmword [0x56e360]
pandn xmm0, xmm1
pand xmm0, xmmword [0x56e370]
movd edi, xmm0
pshufd xmm0, xmm0, 0x55
movd ebx, xmm0
or ebx, edi
jne 0x438d7f
add edx, 8
jmp 0x438d40
mov esi, dword [esp + 0x24]
sub esi, edx
je 0x438d9d
add ecx, edx
nop dword [eax]
cmp byte [ecx], 0x20
je 0x438ff7
inc ecx
dec esi
jne 0x438d90
mov edx, dword [eax + 0xf8]
mov eax, dword [eax + 0xfc]
lea edi, [esp + 0x28]
mov dword [esp + 4], 0
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov ecx, edi
mov dword [esp + 0x20], edx
push 3
push 0x5700f8
mov dword [esp + 0x2c], eax
push eax
call fcn.00470500
add esp, 0xc
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x14], 1
jmp 0x438e09
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
lea edi, [esp + 0x28]
mov byte [eax + esi], 0xa
inc esi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], esi
lea ecx, [esp + 0x70]
mov edx, edi
call fcn.00439600
cmp dword [esp + 0x70], 0
je 0x438e83
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x78]
sub edi, ebx
sub ecx, esi
mov dword [esp + 0x6c], eax
cmp ecx, edi
jb 0x438e6a
mov eax, dword [esp + 0x14]
add ebx, dword [esp + 0x20]
add eax, esi
push edi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0xc], esi
cmp dword [esp + 4], esi
jne 0x438df0
lea ecx, [esp + 4]
mov edx, esi
push 1
call fcn.004b7d20
add esp, 4
mov esi, dword [esp + 0xc]
jmp 0x438df0
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov eax, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x438e37
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 4]
sub edi, ebx
sub eax, esi
cmp eax, edi
jb 0x4391ad
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
add ecx, esi
add eax, ebx
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x18]
add esi, edi
mov edx, dword [esp + 4]
mov edi, dword [esp + 8]
lea ecx, [esp + 0x70]
mov dword [esp + 0x28], 0xa
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], 1
mov dword [esp + 0x40], 0xa
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], esi
mov dword [esp + 0x14], edx
mov word [esp + 0x4c], 0
mov dword [esp + 0x50], ecx
lea ecx, [esp + 4]
lea edx, [esp + 0x28]
mov dword [esp + 0x88], eax
mov dword [esp + 0x78], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], str.PathTryFromIntErrornumber_of_bones_should_fit_in_i32vmesh_src_v3mc.rs
mov dword [esp + 0x84], 0
mov byte [esp + 0x94], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x70], 0
call fcn.0042f550
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0xc]
lea ecx, [esp + 0x98]
mov edx, esi
push 1
push 0x58030d
push ebx
call fcn.004532b0
add esp, 0xc
test ebx, ebx
je 0x438fbd
add esi, 4
jmp 0x438fa6
add esi, 0xc
dec ebx
je 0x438fbd
cmp dword [esi - 4], 0
je 0x438fa0
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x438fa0
cmp dword [esp + 4], 0
je 0x438fd5
push dword [esp + 8]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x14], 0
mov esi, dword [esp + 0x18]
je 0x43913a
push edi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x43913a
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
xor esi, esi
xor ebx, ebx
lea edx, [esp + 0x28]
mov dword [esp + 4], 0
mov dword [esp + 8], 1
mov dword [esp + 0x28], 0x20
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 1
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x40], 0x20
jmp 0x439079
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
lea edx, [esp + 0x28]
mov byte [eax + esi], 0x2d
inc esi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], esi
lea ecx, [esp + 0x70]
call fcn.004393e0
cmp dword [esp + 0x70], 0
je 0x4390f1
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x78]
sub edi, ebx
sub ecx, esi
mov dword [esp + 0x6c], eax
cmp ecx, edi
jb 0x4390d8
mov eax, dword [esp + 0x14]
add ebx, dword [esp + 0x20]
add eax, esi
push edi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0xc], esi
cmp dword [esp + 4], esi
jne 0x439060
lea ecx, [esp + 4]
mov edx, esi
push 1
call fcn.004b7d20
add esp, 4
mov esi, dword [esp + 0xc]
jmp 0x439060
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov eax, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x4390a5
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 4]
sub ecx, ebx
sub eax, esi
mov edi, ecx
cmp eax, ecx
jb 0x4391c9
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
add ecx, esi
add eax, ebx
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, edi
movq xmm0, qword [esp + 4]
mov dword [esp + 0xa0], esi
mov esi, dword [esp + 0x18]
movq qword [esp + 0x98], xmm0
mov edx, dword [esi]
mov eax, esi
mov esi, dword [esp + 0x9c]
lea edi, [esp + 0x28]
mov ecx, edi
push dword [esp + 0xa0]
push esi
push dword [eax + 4]
call fcn.004397f0
add esp, 0xc
movzx ebx, byte [esp + 0x28]
cmp bl, 4
jne 0x439239
cmp dword [esp + 0x98], 0
je 0x439184
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp + 0x1c]
cmp edx, 4
jbe 0x437e02
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
cmp byte [ecx + 4], 0xbf
jle 0x439317
add edx, 0xfffffffc
mov eax, edx
jmp 0x437e15
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x438e9b
lea ecx, [esp + 4]
mov edx, esi
push edi
call fcn.004b7d20
add esp, 4
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0xc]
jmp 0x43910b
mov eax, dword [esp]
mov byte [eax], 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov byte [esp + 0xcd], 1
cmp byte [esp + 0xcc], 0
je 0x439215
mov esi, dword [esp + 0xc4]
mov eax, dword [esp + 0xc8]
jmp 0x43922b
mov esi, dword [esp + 0xc4]
mov eax, dword [esp + 0xc8]
cmp eax, esi
je 0x437da2
sub eax, esi
add esi, dword [esp + 0xac]
jmp 0x437d5a
mov ecx, dword [esp + 0x2c]
cmp dword [esp + 0x98], 0
mov eax, dword [esp + 0x29]
mov dword [esp + 0xdb], ecx
mov dword [esp + 0xd8], eax
je 0x439267
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp]
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdb]
jmp 0x4392b9
mov ecx, dword [esp + 0x2c]
cmp dword [esp + 0x98], 0
mov eax, dword [esp + 0x29]
mov dword [esp + 0xd3], ecx
mov dword [esp + 0xd0], eax
je 0x4392a8
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp]
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd3]
mov byte [edx], bl
mov dword [edx + 1], eax
mov dword [edx + 4], ecx
jmp 0x4391eb
mov ecx, dword [esp + 0xe1]
mov edx, dword [esp + 0xe4]
jmp 0x437d84
mov ecx, dword [esp + 0x71]
mov edx, dword [esp + 0x74]
jmp 0x437d84
cmp dword [esp + 0x28], 0
mov ecx, dword [esp + 0x71]
mov edx, dword [esp + 0x74]
mov edi, dword [esp]
mov dword [edi + 4], edx
mov dword [edi + 1], ecx
mov byte [edi], al
je 0x4391eb
push esi
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4391eb
push 0x570330
push edx
push 4
call fcn.0046fc30
push 0x570330
push edx
push 5
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 8
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 7
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 6
call fcn.0046fc30
push 0x570330
push edx
push 0xe
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0x13
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0xf
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0x14
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0xe
call fcn.0046fc30
push 0x570330
push edx
push 9
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0xc
call fcn.0046fc30
mov edx, ebx
push 0x570330
push ebx
push 0xb
call fcn.0046fc30
nop word cs:[eax + eax]
nop dword [eax]