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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
push ebx
push esi
xor esi, esi
mov dword [esp + 0x14], 0
push edi
mov edi, dword [ebp + 0x10]
xorps xmm0, xmm0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x10], esi
mov dword [esp + 0x28], 1
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], 3
movq qword [esp + 0x5c], xmm0
mov dword [esp + 0x64], esi
mov dword [esp + 0x14], esi
movups xmmword [esp + 0x4c], xmm0
test edi, edi
je 0x1002b795
cmp dword [edi + 4], esi
jbe 0x1002b795
push 0x44
lea eax, [esp + 0x6c]
push esi
push eax
call fcn.10178d50
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x20]
add esp, 0xc
call fcn.1000a410
mov ebx, dword [esp + 0x14]
test eax, eax
jns 0x1002b40b
or edi, 0xffffffff
jmp 0x1002b71f
lock inc dword [ebx]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x1002b4a7
mov ecx, dword [ebp + 8]
cmp dword [eax + 0x20], ecx
je 0x1002b43f
push str.Cannot_perform_reset
push str._s_default___The_given_target_does_not_belong_to_this_repository.
push 0xb
call fcn.1002a5a0
add esp, 0xc
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push eax
lea eax, [esp + 0x20]
push eax
call sym.user32.dll_git_object_peel
mov edi, eax
add esp, 0xc
test edi, edi
js 0x1002b71f
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x1002b482
push str.commit
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
or edi, 0xffffffff
jmp 0x1002b71f
push 2
push 0x28
lea eax, [ecx + 0x30]
push eax
push dword [ecx + 0x20]
lea eax, [esp + 0x2c]
push eax
call sym.user32.dll_git_object_lookup_prefix
mov edi, eax
add esp, 0x14
test edi, edi
js 0x1002b71f
mov edi, dword [ebp + 0x10]
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x28]
push eax
push ebx
push dword [esp + 0x24]
lea eax, [esp + 0x1c]
mov dword [esp + 0x44], ecx
push dword [ebp + 8]
mov dword [esp + 0x3c], 1
push eax
call sym.user32.dll_git_diff_tree_to_index
mov esi, dword [esp + 0x24]
mov edi, eax
add esp, 0x14
test edi, edi
js 0x1002b71f
xor ecx, ecx
mov dword [esp + 0x20], ecx
test esi, esi
jne 0x1002b513
push str.diff
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
mov dword [esp + 0x24], 0xffffffff
xor ecx, ecx
jmp 0x1002b522
mov eax, dword [esi + 0x7c]
mov dword [esp + 0x24], eax
test eax, eax
je 0x1002b6be
test esi, esi
jne 0x1002b580
push str.diff
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
xor esi, esi
mov eax, dword [esi]
cmp eax, 1
je 0x1002b55b
cmp eax, 3
je 0x1002b55b
cmp eax, 0xa
je 0x1002b55b
cmp eax, 2
jne 0x1002b6cb
mov edx, dword [esi + 0x24]
test ebx, ebx
jne 0x1002b58d
push str.index
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
or edi, 0xffffffff
jmp 0x1002b5bc
cmp ecx, dword [esi + 0x7c]
jae 0x1002b53f
mov eax, dword [esi + 0x78]
mov esi, dword [eax + ecx*4]
jmp 0x1002b541
test edx, edx
jne 0x1002b5af
push str.path
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
or edi, 0xffffffff
jmp 0x1002b5bc
mov ecx, ebx
call fcn.10047490
mov edi, eax
test edi, edi
jns 0x1002b5d3
cmp dword [esi], 1
jne 0x1002b71b
cmp edi, 0xfffffffd
jne 0x1002b71b
call sym.user32.dll_git_error_clear
cmp dword [esi], 2
jne 0x1002b5f5
push 0
push dword [esi + 0x24]
push ebx
call sym.user32.dll_git_index_remove
mov edi, eax
add esp, 0xc
test edi, edi
js 0x1002b71b
jmp 0x1002b6a7
mov eax, dword [esi + 0x48]
movzx ecx, word [esi + 0x5c]
mov dword [esp + 0xa0], eax
mov eax, dword [esi + 0x4c]
mov dword [esp + 0x80], ecx
mov dword [esp + 0xa8], eax
mov dword [esp + 0x14], 0
movups xmm0, xmmword [esi + 0x38]
movups xmmword [esp + 0x90], xmm0
test ebx, ebx
je 0x1002b78b
test eax, eax
je 0x1002b6ff
cmp ecx, 0x81a4
je 0x1002b65c
cmp ecx, 0x81ed
je 0x1002b65c
cmp ecx, 0xa000
je 0x1002b65c
cmp ecx, 0xe000
jne 0x1002b6ee
lea eax, [esp + 0x68]
mov edx, ebx
push eax
lea ecx, [esp + 0x18]
call fcn.10045280
mov edi, eax
add esp, 4
test edi, edi
js 0x1002b71b
push 0
push 1
push 1
push ecx
lea edx, [esp + 0x24]
mov ecx, ebx
call fcn.100457c0
mov edi, eax
add esp, 0x10
test edi, edi
js 0x1002b71b
mov edx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x78]
mov edx, dword [edx + 0x40]
call fcn.100a1e80
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, dword [esp + 0x24]
jb 0x1002b522
push ebx
call sym.user32.dll_git_index_write
add esp, 4
mov edi, eax
jmp 0x1002b71f
push str.delta__status__GIT_DELTA_ADDED__delta__status__GIT_DELTA_MODIFIED__delta__status__GIT_DELTA_CONFLICTED__delta__status__GIT_DELTA_DELETED
push str.unrecoverable_internal_error
push 0x101dc9a8
push 0x23
call fcn.1002a5a0
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.invalid_entry_mode
push 0xa
call fcn.1002a5a0
add esp, 8
jmp 0x1002b718
push str.source_entry__source_entry__path
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
or edi, 0xffffffff
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x1002b72c
call fcn.10056a90
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x1002b73b
mov ecx, eax
call fcn.10056a90
or eax, 0xffffffff
test ebx, ebx
je 0x1002b75b
lock xadd dword [ebx], eax
dec eax
test eax, eax
jg 0x1002b758
cmp dword [ebx + 4], 0
jne 0x1002b758
mov ecx, ebx
call fcn.10043750
or eax, 0xffffffff
test esi, esi
je 0x1002b782
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x1002b782
cmp dword [esi + 4], 0
jne 0x1002b782
push esi
mov esi, dword [esi + 0xb8]
mov ecx, esi
call dword [0x101aa4d8]
call esi
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.index
jmp 0x1002b704
push str.pathspecs__pathspecs__count___0
push str.invalid_argument
push 0x101dc9a8
push 3
call fcn.1002a5a0
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret