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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x370
cmp byte [edx + 0xf], 0
mov edi, edx
call 0x43628a
pop esi
mov dword [esp + 0x34], ecx
mov dword [esp + 0xbc], 0
mov dword [esp + 0x20], edx
je 0x43633d
cmp byte [edi + 0xc], 0
jne 0x4362b4
cmp byte [edi + 0xd], 0
je 0x43633d
mov edx, dword [ebp + 8]
lea ecx, [esp + 0xf0]
push 4
push 0x565ea8
push dword [ebp + 0xc]
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
mov edx, dword [esp + 0xf0]
lea ecx, [esp + 0x38]
push dword [esp + 0xf8]
call dbg.stat
add esp, 4
mov eax, dword [esp + 0x38]
xor eax, 2
or eax, dword [esp + 0x3c]
jne 0x43633f
cmp byte [esp + 0x40], 3
mov dword [esp + 0xbc], 0
jne 0x437d08
mov edi, dword [esp + 0x44]
mov eax, dword [edi]
mov ebx, dword [edi + 4]
mov dword [esp + 8], eax
push eax
call dword [ebx]
add esp, 4
cmp dword [ebx + 4], 0
je 0x437cf6
cmp dword [ebx + 8], 9
jae 0x437ce1
mov eax, dword [esp + 8]
jmp 0x437ce8
jmp 0x43637b
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0xbc], 1
mov dword [esp + 0x1c], eax
mov dword [esp + 0x1e0], ecx
cmp dword [esp + 0xf4], 0
je 0x43637b
push dword [esp + 0xf0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov dword [esp + 0x10], 8
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov eax, dword [edi + 0x130]
mov ecx, dword [eax + 0x10]
test ecx, ecx
mov dword [esp + 0x210], ecx
je 0x436454
mov ebx, dword [eax + 8]
movzx eax, byte [edi + 0xe]
mov ecx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x1b0], 4
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
mov byte [esp + 0x180], al
mov edx, edi
push 2
push 0x566558
call dbg._strip_prefix
add esp, 8
test eax, eax
mov ecx, eax
cmove ecx, dword [ebp + 8]
cmove edx, edi
test edx, edx
mov dword [esp + 8], edx
je 0x436527
js 0x437fda
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
mov edi, ecx
test eax, eax
jne 0x43642e
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x436444
mov dword [0x5da100], eax
push dword [esp + 8]
push 0
push eax
call sub.kernel32.dll_HeapAlloc
test eax, eax
mov ecx, edi
jne 0x43652c
mov edx, dword [esp + 8]
mov ecx, 1
call dbg.handle_alloc_error
ud2
xorps xmm0, xmm0
xorps xmm1, xmm1
mov dword [esp + 0xd0], 0
mov dword [esp + 8], 0
mov dword [esp + 0x168], 4
mov dword [esp + 0x160], 1
mov dword [esp + 0x164], 0
mov dword [esp + 0x16c], 4
movaps xmmword [esp + 0x210], xmm0
movaps xmmword [esp + 0xc0], xmm1
movaps xmmword [esp + 0x2f0], xmm0
movaps xmmword [esp + 0x2e0], xmm0
cmp byte [edi + 9], 0
jne 0x436e84
xorps xmm0, xmm0
xorps xmm1, xmm1
mov dword [esp + 0x200], 0
mov dword [esp + 0x1a8], 0
mov dword [esp + 0xc], 4
mov dword [esp + 0x30], 1
mov dword [esp + 0x2c], 0
mov dword [esp + 0x1ac], 4
movaps xmmword [esp + 0x180], xmm0
movaps xmmword [esp + 0x1f0], xmm1
movaps xmmword [esp + 0x350], xmm0
movaps xmmword [esp + 0x340], xmm0
jmp 0x437024
mov eax, 1
mov edi, dword [esp + 8]
mov dword [esp + 0xc], eax
push edi
push ecx
push eax
call sym._memcpy
add esp, 0xc
mov ecx, dword [esp + 0x210]
mov eax, dword [esp + 0xc]
movzx edx, byte [esp + 0x180]
mov dword [esp + 0xc0], 8
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0xc], 8
shl ecx, 4
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], edi
mov dword [esp + 0x1d0], edi
mov edi, 4
mov byte [esp + 0x1d4], 0
mov dword [esp + 0x1bc], 4
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 0
mov byte [esp + 0x1d8], dl
add ecx, ebx
mov dword [esp + 0x210], ecx
lea ecx, [esp + 0x38]
jmp 0x436603
mov ecx, ebx
mov ebx, dword [esp + 8]
cmp ebx, dword [esp + 0x210]
je 0x43679d
lea edx, [ebx + 0x10]
mov eax, ebx
mov ebx, ecx
mov dword [esp + 8], edx
mov edx, dword [ebp + 8]
push dword [eax + 8]
push dword [eax]
push dword [ebp + 0xc]
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x1b0]
push ebx
call sym.ignore::gitignore::GitignoreBuilder::add::h8cdd0c9cfdd632d0
add esp, 4
cmp byte [esp + 0x10c], 0xb
je 0x4365f0
movsd xmm1, qword [esp + 0x100]
movsd xmm0, qword [esp + 0x108]
movsd xmm2, qword [esp + 0xf0]
movsd qword [esp + 0x48], xmm1
movsd xmm1, qword [esp + 0xf8]
movsd qword [esp + 0x50], xmm0
movsd qword [esp + 0x38], xmm2
movsd qword [esp + 0x40], xmm1
movzx eax, byte [ebx + 0x1c]
add al, 0xfe
cmp al, 9
movzx eax, al
cmovae eax, edi
movzx eax, al
mov edx, dword [eax*4 + 0x438084]
mov eax, ebx
add edx, esi
jmp edx
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x1b0]
call sym.ignore::gitignore::GitignoreBuilder::build::he7a9cbbf4a6d3312
movzx eax, byte [esp + 0x12c]
cmp al, 2
mov dword [esp + 8], eax
jne 0x4367f5
mov ecx, dword [esp + 0x180]
cmp ecx, dword [esp + 0xc4]
jne 0x4368bd
mov edx, ecx
lea ecx, [esp + 0xc0]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc8]
jmp 0x4368c1
movsd xmm0, qword [esp + 0xf4]
mov edi, dword [esp + 0xfc]
mov esi, dword [esp + 0x110]
movzx ecx, byte [esp + 0x12f]
mov eax, dword [esp + 0xf0]
movzx edx, word [esp + 0x12d]
movaps xmmword [esp + 0x210], xmm0
movsd xmm0, qword [esp + 0x100]
mov dword [esp + 0x164], edi
mov dword [esp + 0x200], esi
mov edi, dword [esp + 0x114]
mov esi, dword [esp + 0x120]
mov byte [esp + 0x172], cl
mov ecx, dword [esp + 0x180]
mov dword [esp + 0x16c], eax
mov word [esp + 0x170], dx
movsd qword [esp + 0x1f0], xmm0
movsd xmm0, qword [esp + 0x108]
mov dword [esp + 0x168], edi
mov dword [esp + 0x160], esi
movsd qword [esp + 0x1f8], xmm0
movsd xmm0, qword [esp + 0x118]
movaps xmmword [esp + 0x2f0], xmm0
movsd xmm0, qword [esp + 0x124]
movaps xmmword [esp + 0x2e0], xmm0
jmp 0x436b4f
mov edx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf8]
movsd xmm2, qword [esp + 0x100]
movsd xmm3, qword [esp + 0x108]
mov eax, ecx
inc ecx
mov edi, dword [ebp + 0xc]
shl eax, 5
movsd qword [edx + eax + 0x18], xmm3
movsd qword [edx + eax + 0x10], xmm2
movsd qword [edx + eax + 8], xmm1
movsd qword [edx + eax], xmm0
mov dword [esp + 0xc8], ecx
mov ecx, dword [ebp + 8]
mov dword [esp + 0x130], 4
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
mov edx, edi
push 2
push 0x566558
call dbg._strip_prefix
add esp, 8
mov ebx, eax
test eax, eax
mov esi, edx
cmove ebx, dword [ebp + 8]
cmove esi, edi
test esi, esi
je 0x436993
js 0x437fda
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x436976
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x436985
mov dword [0x5da100], eax
push esi
push 0
push eax
call sub.kernel32.dll_HeapAlloc
mov edi, eax
test eax, eax
jne 0x436998
mov ecx, 1
mov edx, esi
call dbg.handle_alloc_error
ud2
mov edi, 1
push esi
push ebx
push edi
call sym._memcpy
add esp, 0xc
lea ecx, [esp + 0x38]
lea edx, [esp + 0x130]
mov dword [esp + 0x148], edi
mov dword [esp + 0x14c], esi
mov dword [esp + 0x150], esi
mov byte [esp + 0x154], 0
mov dword [esp + 0x13c], 4
mov dword [esp + 0x140], 0
mov dword [esp + 0x144], 0
mov byte [esp + 0x158], 0
call sym.ignore::gitignore::GitignoreBuilder::build::he7a9cbbf4a6d3312
movzx eax, byte [esp + 0x74]
cmp al, 2
mov dword [esp + 8], eax
je 0x437ffa
movsd xmm0, qword [esp + 0x3c]
test esi, esi
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x58]
mov eax, dword [esp + 0x38]
movzx edx, word [esp + 0x75]
movzx ecx, byte [esp + 0x77]
movaps xmmword [esp + 0x210], xmm0
movsd xmm0, qword [esp + 0x48]
mov dword [esp + 0x164], ebx
mov dword [esp + 0x200], esi
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x16c], eax
mov word [esp + 0x170], dx
mov byte [esp + 0x172], cl
movsd qword [esp + 0x1f0], xmm0
movsd xmm0, qword [esp + 0x50]
mov dword [esp + 0x168], ebx
mov dword [esp + 0x160], esi
movsd qword [esp + 0x1f8], xmm0
movsd xmm0, qword [esp + 0x60]
movaps xmmword [esp + 0x2f0], xmm0
movsd xmm0, qword [esp + 0x6c]
movaps xmmword [esp + 0x2e0], xmm0
je 0x436b1f
push edi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x144]
test esi, esi
je 0x436b1f
mov edi, dword [esp + 0x13c]
add edi, 0x20
jmp 0x436ad6
add edi, 0x2c
dec esi
je 0x436b1f
cmp byte [edi - 0x14], 2
je 0x436af2
cmp dword [edi - 0x1c], 0
je 0x436af2
push dword [edi - 0x20]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi - 0xc], 0
je 0x436b08
push dword [edi - 0x10]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi], 0
je 0x436ad0
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x436ad0
cmp dword [esp + 0x140], 0
je 0x436b3d
push dword [esp + 0x13c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x200]
movsd xmm0, qword [esp + 0x1f0]
movsd xmm1, qword [esp + 0x1f8]
test ecx, ecx
mov dword [esp + 0x48], eax
movzx eax, word [esp + 0x170]
movsd qword [esp + 0x38], xmm0
movsd qword [esp + 0x40], xmm1
mov word [esp + 0x130], ax
movzx eax, byte [esp + 0x172]
mov byte [esp + 0x132], al
mov eax, dword [esp + 0xc4]
je 0x436c0e
cmp ecx, 1
jne 0x436c36
mov ecx, dword [esp + 0xc]
movzx ebx, byte [ecx + 0x1c]
cmp bl, 0xb
je 0x437fe1
mov esi, ecx
mov edx, dword [ecx]
mov edi, dword [ecx + 4]
mov ecx, dword [ecx + 8]
movsd xmm0, qword [esi + 0x14]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x2c], edx
movsd qword [esp + 0xf8], xmm0
movsd xmm0, qword [esi + 0xc]
movsd qword [esp + 0xf0], xmm0
movzx ecx, word [esi + 0x1d]
mov word [esp + 0xe0], cx
movzx ecx, byte [esi + 0x1f]
mov byte [esp + 0xe2], cl
test eax, eax
mov byte [esp + 0x30], bl
jne 0x436c18
jmp 0x436c29
mov bl, 0xb
test eax, eax
mov byte [esp + 0x30], bl
je 0x436c29
push dword [esp + 0xc]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ebx, dword [esp + 0x1b8]
test ebx, ebx
jne 0x436c57
jmp 0x436cab
mov edx, dword [esp + 0xc]
mov byte [esp + 0x30], 2
mov dword [esp + 0x180], ecx
mov edi, eax
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x1b8]
test ebx, ebx
je 0x436cab
mov esi, dword [esp + 0x1b0]
add esi, 0x1c
jmp 0x436c7d
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_globset..glob..Tokens_GT_::h8382ea7fcbf328d9
add esi, 0x28
dec ebx
je 0x436cab
cmp dword [esi - 0x14], 0
je 0x436c93
push dword [esi - 0x18]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esi - 8], 0
je 0x436c70
push dword [esi - 0xc]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x436c70
cmp dword [esp + 0x1b4], 0
je 0x436cc9
push dword [esp + 0x1b0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x1cc], 0
je 0x436ce7
push dword [esp + 0x1c8]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x1c4]
test esi, esi
je 0x436d4f
mov ebx, dword [esp + 0x1bc]
add ebx, 0x20
jmp 0x436d06
add ebx, 0x2c
dec esi
je 0x436d4f
cmp byte [ebx - 0x14], 2
je 0x436d22
cmp dword [ebx - 0x1c], 0
je 0x436d22
push dword [ebx - 0x20]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [ebx - 0xc], 0
je 0x436d38
push dword [ebx - 0x10]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [ebx], 0
je 0x436d00
push dword [ebx - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x436d00
cmp dword [esp + 0x1c0], 0
je 0x436d6d
push dword [esp + 0x1bc]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
movzx ebx, byte [esp + 0x30]
mov eax, dword [esp + 0x48]
movzx esi, word [esp + 0x130]
mov ch, byte [esp + 0x132]
movzx edx, word [esp + 0xe0]
mov cl, byte [esp + 0xe2]
movsd qword [esp + 0xc0], xmm0
movsd qword [esp + 0xc8], xmm1
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf8]
cmp bl, 0xb
mov dword [esp + 0xd0], eax
mov word [esp + 0x98], si
mov byte [esp + 0x9a], ch
mov word [esp + 0x9c], dx
mov byte [esp + 0x9e], cl
movsd qword [esp + 0x300], xmm0
movsd qword [esp + 0x308], xmm1
je 0x436e76
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x14]
jne 0x436e17
lea ecx, [esp + 0x10]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x2c]
mov eax, edx
inc edx
shl eax, 5
mov dword [ecx + eax], esi
mov esi, dword [esp + 0x180]
mov dword [ecx + eax + 4], edi
mov dword [ecx + eax + 8], esi
movsd xmm0, qword [esp + 0x300]
movsd xmm1, qword [esp + 0x308]
movsd qword [ecx + eax + 0xc], xmm0
movsd qword [ecx + eax + 0x14], xmm1
mov byte [ecx + eax + 0x1c], bl
movzx esi, word [esp + 0x9c]
mov word [ecx + eax + 0x1d], si
movzx ebx, byte [esp + 0x9e]
mov byte [ecx + eax + 0x1f], bl
mov dword [esp + 0x18], edx
mov edi, dword [esp + 0x20]
cmp byte [edi + 9], 0
je 0x4364c3
movzx eax, byte [edi + 0xe]
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x38]
push eax
push 0x565eb4
mov eax, dword [ebp + 0xc]
push eax
push edx
push eax
call sym.ignore::dir::create_gitignore::hecaf18afad56970a
add esp, 0x14
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x3c]
movzx ebx, byte [esp + 0x94]
movsd xmm1, qword [esp + 0x80]
mov dword [esp + 0x1ac], eax
mov eax, dword [esp + 0x44]
movaps xmmword [esp + 0x180], xmm0
movsd xmm0, qword [esp + 0x48]
cmp bl, 0xb
movsd qword [esp + 0x268], xmm1
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x58]
movsd qword [esp + 0x1f0], xmm0
movsd xmm0, qword [esp + 0x50]
mov dword [esp + 0x200], eax
mov eax, dword [esp + 0x5c]
movsd qword [esp + 0x1f8], xmm0
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x68]
movaps xmmword [esp + 0x350], xmm0
movsd xmm0, qword [esp + 0x6c]
mov dword [esp + 0x30], eax
movzx eax, word [esp + 0x75]
movaps xmmword [esp + 0x340], xmm0
movsd xmm0, qword [esp + 0x88]
mov word [esp + 0xa0], ax
movzx eax, byte [esp + 0x77]
movsd qword [esp + 0x270], xmm0
movsd xmm0, qword [esp + 0x78]
mov byte [esp + 0xa2], al
mov eax, dword [esp + 0x90]
movsd qword [esp + 0x260], xmm0
mov dword [esp + 0x278], eax
movzx eax, word [esp + 0x95]
mov word [esp + 0xa4], ax
movzx eax, byte [esp + 0x97]
mov byte [esp + 0xa6], al
movzx eax, byte [esp + 0x74]
mov dword [esp + 0x1a8], eax
je 0x437024
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x14]
jne 0x436fc2
lea ecx, [esp + 0x10]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x278]
mov ecx, edx
inc edx
shl ecx, 5
mov dword [eax + ecx + 0x18], esi
movsd xmm0, qword [esp + 0x270]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x260]
movsd xmm1, qword [esp + 0x268]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov byte [eax + ecx + 0x1c], bl
movzx esi, word [esp + 0xa4]
mov word [eax + ecx + 0x1d], si
movzx ebx, byte [esp + 0xa6]
mov byte [eax + ecx + 0x1f], bl
mov dword [esp + 0x18], edx
cmp byte [edi + 0xc], 0
je 0x4371e2
movzx eax, byte [edi + 0xe]
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x38]
push eax
push 0x565ec8
mov eax, dword [ebp + 0xc]
push eax
push edx
push eax
call sym.ignore::dir::create_gitignore::hecaf18afad56970a
add esp, 0x14
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x3c]
movzx ebx, byte [esp + 0x94]
movsd xmm1, qword [esp + 0x80]
mov dword [esp + 0x198], eax
mov eax, dword [esp + 0x44]
movaps xmmword [esp + 0x330], xmm0
movsd xmm0, qword [esp + 0x48]
cmp bl, 0xb
movsd qword [esp + 0x288], xmm1
mov dword [esp + 0x19c], eax
mov eax, dword [esp + 0x58]
movsd qword [esp + 0x1b0], xmm0
movsd xmm0, qword [esp + 0x50]
mov dword [esp + 0x1c0], eax
mov eax, dword [esp + 0x5c]
movsd qword [esp + 0x1b8], xmm0
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0x68]
movaps xmmword [esp + 0x320], xmm0
movsd xmm0, qword [esp + 0x6c]
mov dword [esp + 0x1a0], eax
movzx eax, word [esp + 0x75]
movaps xmmword [esp + 0x310], xmm0
movsd xmm0, qword [esp + 0x88]
mov word [esp + 0xa8], ax
movzx eax, byte [esp + 0x77]
movsd qword [esp + 0x290], xmm0
movsd xmm0, qword [esp + 0x78]
mov byte [esp + 0xaa], al
mov eax, dword [esp + 0x90]
movsd qword [esp + 0x280], xmm0
mov dword [esp + 0x298], eax
movzx eax, word [esp + 0x95]
mov word [esp + 0xac], ax
movzx eax, byte [esp + 0x97]
mov byte [esp + 0xae], al
movzx eax, byte [esp + 0x74]
mov dword [esp + 0x194], eax
je 0x4371d7
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x14]
jne 0x437175
lea ecx, [esp + 0x10]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x298]
mov ecx, edx
inc edx
shl ecx, 5
mov dword [eax + ecx + 0x18], esi
movsd xmm0, qword [esp + 0x290]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x280]
movsd xmm1, qword [esp + 0x288]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov byte [eax + ecx + 0x1c], bl
movzx esi, word [esp + 0xac]
mov word [eax + ecx + 0x1d], si
movzx ebx, byte [esp + 0xae]
mov byte [eax + ecx + 0x1f], bl
mov dword [esp + 0x18], edx
cmp byte [edi + 0xd], 0
jne 0x437254
jmp 0x4376de
xorps xmm0, xmm0
xorps xmm1, xmm1
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x194], 0
mov dword [esp + 0x1a4], 4
mov dword [esp + 0x1a0], 1
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 4
movaps xmmword [esp + 0x330], xmm0
movaps xmmword [esp + 0x1b0], xmm1
movaps xmmword [esp + 0x320], xmm0
movaps xmmword [esp + 0x310], xmm0
cmp byte [edi + 0xd], 0
je 0x4376de
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x240]
push 4
push 0x565ea8
push dword [ebp + 0xc]
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
cmp dword [esp + 0xbc], 0
je 0x43742c
mov edx, dword [esp + 0x1c]
test edx, 0x400
sete al
test dword [esp + 0x1e0], 0x20000000
sete cl
test dl, 0x10
jne 0x43742c
or al, cl
je 0x43742c
mov esi, dword [esp + 0x240]
mov edi, dword [esp + 0x244]
movaps xmm0, xmmword [0x55f600]
mov eax, dword [esp + 0x248]
lea ebx, [esp + 0x38]
mov dword [esp + 0x54], 0
mov word [esp + 0x58], 0
mov dword [esp + 0x38], 0
lea ecx, [esp + 0xf0]
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
mov byte [esp + 0x54], 1
mov edx, esi
push ebx
push eax
call dbg.open
add esp, 8
cmp byte [esp + 0xf0], 4
mov ebx, 4
je 0x43731c
mov ebx, dword [esp + 0xf0]
test edi, edi
mov edi, dword [esp + 0xf4]
je 0x437335
push esi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp bl, 4
jne 0x437c99
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x437360
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x43805c
mov dword [0x5da100], eax
push 0x2000
push 0
push eax
call sub.kernel32.dll_HeapAlloc
test eax, eax
je 0x43805c
movaps xmm0, xmmword [0x55f610]
lea ecx, [esp + 0xe0]
lea edx, [esp + 0x130]
mov dword [esp + 0x144], edi
mov dword [esp + 0x130], eax
movups xmmword [esp + 0x134], xmm0
call sym.__LT_std..io..Lines_LT_B_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::h4bd83e0043b6363e
cmp dword [esp + 0xe0], 0
je 0x437d1b
mov ebx, dword [esp + 0xe4]
test ebx, ebx
je 0x437d25
mov edi, dword [esp + 0xe8]
mov esi, dword [esp + 0xec]
push dword [esp + 0x144]
call sub.kernel32.dll_CloseHandle
cmp dword [esp + 0x134], 0
je 0x4373fa
push dword [esp + 0x130]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp esi, 8
jb 0x437416
mov eax, 0x64746967
mov ecx, 0x203a7269
xor eax, dword [ebx]
xor ecx, dword [ebx + 4]
or ecx, eax
je 0x437da9
mov byte [esp + 0x10c], 0xb
test edi, edi
mov edi, dword [esp + 0x20]
je 0x437458
push ebx
jmp 0x437d97
movsd xmm0, qword [esp + 0x240]
movsd xmm1, qword [esp + 0x248]
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0xf0], xmm0
mov byte [esp + 0x10c], 0xc
movzx ebx, byte [esp + 0x10c]
cmp bl, 0xc
jne 0x43765e
mov eax, dword [esp + 0xf4]
mov esi, dword [esp + 0xf0]
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x38]
mov dword [esp + 0xb4], eax
movzx eax, byte [edi + 0xe]
push eax
push 0x565edc
push dword [esp + 0x100]
push esi
push dword [ebp + 0xc]
call sym.ignore::dir::create_gitignore::hecaf18afad56970a
add esp, 0x14
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x3c]
movzx ebx, byte [esp + 0x94]
movsd xmm1, qword [esp + 0x80]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x44]
movaps xmmword [esp + 0x1e0], xmm0
movsd xmm0, qword [esp + 0x48]
cmp bl, 0xb
movsd qword [esp + 0x2a8], xmm1
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
movsd qword [esp + 0x130], xmm0
movsd xmm0, qword [esp + 0x50]
mov dword [esp + 0x140], eax
mov eax, dword [esp + 0x5c]
movsd qword [esp + 0x138], xmm0
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x68]
movaps xmmword [esp + 0x2d0], xmm0
movsd xmm0, qword [esp + 0x6c]
mov dword [esp + 0x1c], eax
movzx eax, word [esp + 0x75]
movaps xmmword [esp + 0x2c0], xmm0
movsd xmm0, qword [esp + 0x88]
mov word [esp + 0x170], ax
movzx eax, byte [esp + 0x77]
movsd qword [esp + 0x2b0], xmm0
movsd xmm0, qword [esp + 0x78]
mov byte [esp + 0x172], al
mov eax, dword [esp + 0x90]
movsd qword [esp + 0x2a0], xmm0
mov dword [esp + 0x2b8], eax
movzx eax, word [esp + 0x95]
mov word [esp + 0xb0], ax
movzx eax, byte [esp + 0x97]
mov byte [esp + 0xb2], al
movzx eax, byte [esp + 0x74]
mov dword [esp + 0x15c], eax
je 0x437627
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x14]
jne 0x4375c1
lea ecx, [esp + 0x10]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x2b8]
mov ecx, edx
inc edx
shl ecx, 5
mov dword [eax + ecx + 0x18], edi
movsd xmm0, qword [esp + 0x2b0]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x2a0]
movsd xmm1, qword [esp + 0x2a8]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov byte [eax + ecx + 0x1c], bl
movzx edi, word [esp + 0xb0]
mov word [eax + ecx + 0x1d], di
mov edi, dword [esp + 0x20]
movzx ebx, byte [esp + 0xb2]
mov byte [eax + ecx + 0x1f], bl
mov dword [esp + 0x18], edx
cmp dword [esp + 0xb4], 0
je 0x437c7f
push esi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ebx, dword [esp + 0xb8]
mov eax, dword [edi + 0x120]
lock inc dword [eax]
jg 0x437746
jmp 0x437c95
cmp bl, 0xb
je 0x4376de
mov edx, dword [esp + 0x18]
lea esi, [esp + 0x10d]
cmp edx, dword [esp + 0x14]
jne 0x437681
lea ecx, [esp + 0x10]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h359a84318f967cc1
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x108]
mov ecx, edx
inc edx
shl ecx, 5
mov dword [eax + ecx + 0x18], edi
movsd xmm0, qword [esp + 0x100]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf8]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov byte [eax + ecx + 0x1c], bl
movzx edi, word [esi]
mov word [eax + ecx + 0x1d], di
mov edi, dword [esp + 0x20]
movzx ebx, byte [esi + 2]
mov byte [eax + ecx + 0x1f], bl
mov dword [esp + 0x18], edx
xorps xmm0, xmm0
xorps xmm1, xmm1
mov ebx, 4
mov dword [esp + 0x140], 0
mov dword [esp + 0x15c], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 4
movaps xmmword [esp + 0x1e0], xmm0
movaps xmmword [esp + 0x130], xmm1
movaps xmmword [esp + 0x2d0], xmm0
movaps xmmword [esp + 0x2c0], xmm0
mov eax, dword [edi + 0x120]
lock inc dword [eax]
jle 0x437c95
mov eax, dword [edi + 0x120]
cmp dword [ebp + 0xc], 0
mov dword [esp + 0xb8], eax
je 0x43779d
js 0x437fda
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x43777d
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x43778e
mov dword [0x5da100], eax
push dword [ebp + 0xc]
push 0
push eax
call sub.kernel32.dll_HeapAlloc
mov esi, eax
test eax, eax
jne 0x4377a2
mov edx, dword [ebp + 0xc]
mov ecx, 1
call dbg.handle_alloc_error
ud2
mov esi, 1
push dword [ebp + 0xc]
push dword [ebp + 8]
push esi
call sym._memcpy
add esp, 0xc
mov eax, dword [edi + 0x124]
lock inc dword [eax]
jle 0x437c95
mov eax, dword [edi + 0x128]
mov ecx, dword [edi + 0x124]
lock inc dword [eax]
jle 0x437c95
mov edx, dword [edi + 0x128]
lock inc dword [edi]
jle 0x437c95
mov eax, dword [edi + 0x13c]
test eax, eax
je 0x437814
lock inc dword [eax]
jle 0x437c95
mov eax, dword [edi + 0x13c]
mov dword [esp + 0xb4], eax
mov eax, dword [edi + 0x12c]
lock inc dword [eax]
jg 0x43782e
jmp 0x437c95
mov dword [esp + 0xb4], 0
mov eax, dword [edi + 0x12c]
lock inc dword [eax]
jle 0x437c95
mov eax, dword [edi + 0x12c]
mov dword [esp + 0x23c], eax
mov eax, dword [edi + 0x130]
lock inc dword [eax]
jle 0x437c95
mov eax, dword [edi + 0x130]
mov dword [esp + 0x238], ecx
mov ecx, dword [edi + 0x134]
mov dword [esp + 0x234], edx
mov dword [esp + 0x230], eax
lock inc dword [ecx]
jle 0x437c95
mov eax, dword [edi + 0x134]
mov ecx, dword [esp + 0x34]
movaps xmm0, xmmword [esp + 0x330]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x198]
test edx, edx
mov dword [ecx + 0x98], eax
mov eax, dword [esp + 0x19c]
movlps qword [ecx + 0x9c], xmm0
movsd xmm0, qword [esp + 0x1b0]
mov dword [ecx + 0xa4], eax
mov eax, dword [esp + 0x1c0]
movsd qword [ecx + 0xa8], xmm0
movsd xmm0, qword [esp + 0x1b8]
mov dword [ecx + 0xb8], eax
mov eax, dword [esp + 0x1a4]
movsd qword [ecx + 0xb0], xmm0
movaps xmm0, xmmword [esp + 0x320]
mov dword [ecx + 0xbc], eax
mov eax, dword [esp + 0x1a0]
movlps qword [ecx + 0xc0], xmm0
movaps xmm0, xmmword [esp + 0x310]
mov dword [ecx + 0xc8], eax
mov eax, dword [esp + 0x194]
movlps qword [ecx + 0xcc], xmm0
movaps xmm0, xmmword [esp + 0x1e0]
mov byte [ecx + 0xd4], al
movzx eax, byte [esp + 0xaa]
mov byte [ecx + 0xd7], al
movzx eax, word [esp + 0xa8]
mov word [ecx + 0xd5], ax
mov eax, dword [esp + 0x24]
mov dword [ecx + 0xd8], eax
movlps qword [ecx + 0xdc], xmm0
mov eax, dword [esp + 0x28]
movsd xmm0, qword [esp + 0x130]
mov dword [ecx + 0xe4], eax
movsd qword [ecx + 0xe8], xmm0
movsd xmm0, qword [esp + 0x138]
mov eax, dword [esp + 0x140]
movsd qword [ecx + 0xf0], xmm0
mov dword [ecx + 0xf8], eax
movaps xmm0, xmmword [esp + 0x2d0]
mov eax, dword [esp + 0x1c]
mov dword [ecx + 0xfc], ebx
movlps qword [ecx + 0x100], xmm0
mov dword [ecx + 0x108], eax
movaps xmm0, xmmword [esp + 0x2c0]
mov eax, dword [esp + 0x15c]
movlps qword [ecx + 0x10c], xmm0
mov byte [ecx + 0x114], al
movzx eax, word [esp + 0x170]
movaps xmm0, xmmword [esp + 0x210]
mov word [ecx + 0x115], ax
movzx eax, byte [esp + 0x172]
mov byte [ecx + 0x117], al
mov eax, dword [ebp + 0xc]
mov ebx, dword [edi + 0xc]
mov edi, dword [edi + 8]
mov dword [ecx + 8], esi
mov esi, ecx
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
movzx eax, word [esp + 0x38]
mov byte [ecx + 0x14], 0
mov word [ecx + 0x15], ax
movzx eax, byte [esp + 0x3a]
mov byte [ecx + 0x17], al
mov eax, dword [esp + 0x16c]
mov dword [ecx + 0x18], eax
mov eax, dword [esp + 0x164]
movlps qword [ecx + 0x1c], xmm0
movsd xmm0, qword [esp + 0xc0]
mov dword [ecx + 0x24], eax
mov eax, dword [esp + 0xd0]
movsd qword [ecx + 0x28], xmm0
movsd xmm0, qword [esp + 0xc8]
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x168]
movsd qword [ecx + 0x30], xmm0
movaps xmm0, xmmword [esp + 0x2f0]
mov dword [ecx + 0x3c], eax
mov eax, dword [esp + 0x160]
movlps qword [ecx + 0x40], xmm0
movaps xmm0, xmmword [esp + 0x2e0]
mov dword [ecx + 0x48], eax
mov eax, dword [esp + 8]
movlps qword [ecx + 0x4c], xmm0
movaps xmm0, xmmword [esp + 0x180]
mov byte [ecx + 0x54], al
movzx eax, word [esp + 0x98]
mov word [ecx + 0x55], ax
movzx eax, byte [esp + 0x9a]
mov byte [ecx + 0x57], al
mov eax, dword [esp + 0x1ac]
mov dword [ecx + 0x58], eax
mov eax, dword [esp + 0x2c]
movlps qword [ecx + 0x5c], xmm0
movsd xmm0, qword [esp + 0x1f8]
mov dword [ecx + 0x64], eax
mov eax, dword [esp + 0x200]
movsd qword [ecx + 0x70], xmm0
movsd xmm0, qword [esp + 0x1f0]
mov dword [ecx + 0x78], eax
mov eax, dword [esp + 0xc]
movsd qword [ecx + 0x68], xmm0
movaps xmm0, xmmword [esp + 0x350]
mov dword [ecx + 0x7c], eax
mov eax, dword [esp + 0x30]
movlps qword [ecx + 0x80], xmm0
movaps xmm0, xmmword [esp + 0x340]
mov dword [ecx + 0x88], eax
mov eax, dword [esp + 0x1a8]
movlps qword [ecx + 0x8c], xmm0
mov byte [ecx + 0x94], al
movzx eax, byte [esp + 0xa2]
mov byte [ecx + 0x97], al
movzx eax, word [esp + 0xa0]
mov word [ecx + 0x95], ax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
je 0x437bc4
cmp edx, 1
jne 0x437be0
movzx edx, byte [eax + 0x1c]
mov dword [esp + 8], ebx
cmp dl, 0xb
je 0x437fe1
mov esi, dword [esp + 0x34]
mov ebx, dword [eax + 0x18]
add esi, 0x140
mov dword [esi + 0x18], ebx
mov ebx, dword [esp + 0x34]
movsd xmm0, qword [eax + 0x10]
movsd qword [esi + 0x10], xmm0
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
movsd qword [esi + 8], xmm1
movsd qword [esi], xmm0
mov esi, dword [esp + 0x34]
mov dh, byte [eax + 0x1f]
mov byte [esi + 0x15f], dh
movzx esi, word [eax + 0x1d]
mov word [ebx + 0x15d], si
mov esi, dword [esp + 0x34]
mov ebx, dword [esp + 8]
test ecx, ecx
mov byte [esi + 0x15c], dl
jne 0x437bd0
jmp 0x437bf9
mov dl, 0xb
test ecx, ecx
mov byte [esi + 0x15c], dl
je 0x437bf9
push eax
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x437bf9
mov dword [esi + 0x140], eax
mov dword [esi + 0x144], ecx
mov dword [esi + 0x148], edx
mov byte [esi + 0x15c], 2
mov eax, dword [esp + 0xb8]
mov dword [esi], edi
mov dword [esi + 4], ebx
mov dword [esi + 0x118], eax
mov eax, dword [esp + 0x238]
mov dword [esi + 0x11c], eax
mov eax, dword [esp + 0x234]
mov dword [esi + 0x120], eax
mov eax, dword [esp + 0x23c]
mov dword [esi + 0x124], eax
mov eax, dword [esp + 0x230]
mov dword [esi + 0x128], eax
mov eax, dword [esp + 0x22c]
mov dword [esi + 0x12c], eax
mov eax, dword [esp + 0x20]
mov dword [esi + 0x130], eax
mov eax, dword [esp + 0xb4]
mov dword [esi + 0x134], eax
mov eax, dword [esp + 0xbc]
mov byte [esi + 0x138], 0
mov byte [esi + 0x139], al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, dword [esp + 0xb8]
mov eax, dword [edi + 0x120]
lock inc dword [eax]
jg 0x437746
ud2
mov edx, dword [ebp + 8]
lea esi, [esp + 0x130]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], edi
mov byte [esp + 0x54], 7
mov ecx, esi
push 4
push 0x565ea8
push dword [ebp + 0xc]
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x38]
push esi
call sym.ignore::Error::with_path::h75524f547cb29e12
add esp, 4
mov edi, dword [esp + 0x20]
jmp 0x437458
mov eax, dword [esp + 8]
mov eax, dword [eax - 4]
push eax
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
push edi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov edi, dword [esp + 0x20]
cmp dword [esp + 0xf4], 0
jne 0x436367
jmp 0x43637b
mov byte [esp + 0x10c], 0xb
jmp 0x437d72
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov edx, dword [ebp + 8]
lea esi, [esp + 0x170]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov byte [esp + 0x54], 7
mov ecx, esi
push 4
push 0x565ea8
push dword [ebp + 0xc]
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x38]
push esi
call sym.ignore::Error::with_path::h75524f547cb29e12
add esp, 4
push dword [esp + 0x144]
call sub.kernel32.dll_CloseHandle
cmp dword [esp + 0x134], 0
mov edi, dword [esp + 0x20]
je 0x437458
push dword [esp + 0x130]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x437458
cmp esi, 9
jb 0x437db8
cmp byte [ebx + 8], 0xbf
jle 0x43806d
add esi, 0xfffffff8
mov dword [esp + 0x1e0], ebx
lea edx, [ebx + 8]
lea ecx, [esp + 0x250]
push esi
call sym.std::sys::windows::os_str::Slice::to_owned::h099d5a7d8084c9aa
add esp, 4
mov edx, dword [esp + 0x250]
mov ebx, dword [esp + 0x258]
lea esi, [esp + 0x38]
mov ecx, esi
mov dword [esp + 0x1c], edx
push 9
push str.commondir
push ebx
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
lea ecx, [esp + 0x170]
mov edx, esi
call sym.std::fs::File::open::h6565b1bdc548894b
movzx eax, byte [esp + 0x170]
cmp al, 4
jne 0x437ebe
mov edx, dword [esp + 0x174]
lea esi, [esp + 0x130]
mov ecx, esi
call sym.std::io::buffered::bufreader::BufReader_LT_R_GT_::with_capacity::h31fb6b21aac6d832
lea ecx, [esp + 0xe0]
mov edx, esi
call sym.__LT_std..io..Lines_LT_B_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::h4bd83e0043b6363e
cmp dword [esp + 0xe0], 0
je 0x437eda
mov esi, dword [esp + 0xe4]
test esi, esi
je 0x437f57
mov ecx, dword [esp + 0xec]
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x28], ecx
lea ecx, [esp + 0x130]
mov dword [esp + 0x24], eax
call sym.__ZN4core3ptr103drop_in_place_LT_std..io..Lines_LT_std..io..buffered..bufreader..BufReader_LT_std..fs..File_GT__GT__GT_17hfa6d
mov eax, dword [esp + 0x28]
test eax, eax
je 0x437ee7
cmp byte [esi], 0x2e
jne 0x437ee7
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xf0], esi
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
lea eax, [esp + 0xf0]
lea ecx, [esp + 0x38]
push eax
push ebx
call sym.std::path::Path::join::h7ed712b62997ffb1
add esp, 8
jmp 0x437efc
mov edx, dword [esp + 0x174]
movzx ecx, al
mov byte [esp + 0x10c], 0xb
call sym.core::ptr::drop_in_place_LT_core..result..Result_LT_std..fs..File_C_std..io..error..Error_GT__GT_::h4f7ad3fe3639332a
jmp 0x437faf
mov byte [esp + 0x10c], 0xb
jmp 0x437fa3
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov byte [esp + 0x44], 1
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
mov esi, dword [esp + 0x1e0]
cmp dword [esp + 0x254], 0
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0xf0], xmm0
je 0x437f3c
push dword [esp + 0x1c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
test edi, edi
je 0x437f4e
push esi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov edi, dword [esp + 0x20]
jmp 0x437469
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov edx, dword [esp + 0x1c]
lea esi, [esp + 0x170]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov byte [esp + 0x54], 7
mov ecx, esi
push 9
push str.commondir
push ebx
call sym.std::path::Path::_join::hd6feba9117964eb6
add esp, 0xc
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x38]
push esi
call sym.ignore::Error::with_path::h75524f547cb29e12
add esp, 4
lea ecx, [esp + 0x130]
call sym.__ZN4core3ptr103drop_in_place_LT_std..io..Lines_LT_std..io..buffered..bufreader..BufReader_LT_std..fs..File_GT__GT__GT_17hfa6d
mov ebx, dword [esp + 0x1e0]
cmp dword [esp + 0x254], 0
je 0x43741e
push dword [esp + 0x1c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x43741e
call sym.alloc::raw_vec::capacity_overflow::h894971bc65aab54c
ud2
mov ecx, str.called__Option::unwrap____on_a__None__valueC:UsersTEST.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
mov edx, 0x2b
push 0x565fec
call dbg.panic
add esp, 4
ud2
movsd xmm1, qword [esp + 0x48]
movsd xmm0, qword [esp + 0x50]
movsd xmm2, qword [esp + 0x38]
lea eax, [esp + 0x1f0]
mov ecx, str.called__Result::unwrap____on_an__Err__value
mov edx, 0x2b
movsd qword [esp + 0x200], xmm1
movsd xmm1, qword [esp + 0x40]
movsd qword [esp + 0x208], xmm0
movsd qword [esp + 0x1f0], xmm2
movsd qword [esp + 0x1f8], xmm1
push 0x565ee4
push 0x565ddc
push eax
call dbg.unwrap_failed
add esp, 0xc
ud2
mov ecx, 1
mov edx, 0x2000
call dbg.handle_alloc_error
ud2
mov ecx, ebx
mov edx, esi
push 0x565efc
push esi
push 8
call dbg.slice_error_fail
add esp, 0xc
ud2