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

Disassembly:
sub esp, 0x38
push ebx
push ebp
push esi
push edi
mov ebp, 0x1020156d
mov dword [esp + 0x20], ecx
xor ebx, ebx
mov dword [esp + 0x3c], 0x1020156d
mov dword [esp + 0x40], 0
mov edi, edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x44], 0
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x14], ebx
test ecx, ecx
jne 0x100562b4
push 0x101d76e0
push str.invalid_argument
push 0x101d76f8
push 3
call fcn.10028740
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
test edi, edi
jne 0x100562dc
push str.repo
push str.invalid_argument
push 0x101d76f8
push 3
call fcn.10028740
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov esi, dword [esp + 0x4c]
test esi, esi
jne 0x10056308
push str.refname
push str.invalid_argument
push 0x101d76f8
push 3
call fcn.10028740
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov ecx, esi
call fcn.10013e20
test eax, eax
jne 0x1005632e
push esi
push str.reference__s_is_not_a_local_branch.
push 3
call fcn.10028740
add esp, 0xc
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov edx, edi
lea ecx, [esp + 0x18]
call fcn.10007e00
test eax, eax
js 0x10056717
push dword [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
call sym.user32.dll_git_config_snapshot
add esp, 8
test eax, eax
js 0x10056717
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x3c]
push str.branch._s.remote
push esi
call fcn.10056030
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
test edi, edi
js 0x10056487
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x24]
push str.branch._s.merge
push esi
call fcn.10056030
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
test edi, edi
js 0x10056483
cmp dword [esp + 0x44], ebx
je 0x1005646b
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x1005646b
mov esi, dword [esp + 0x3c]
mov eax, 0x101d9128
mov ecx, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100563e3
test dl, dl
je 0x100563df
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100563e3
add eax, 2
add ecx, 2
test dl, dl
jne 0x100563c3
xor eax, eax
jmp 0x100563e8
sbb eax, eax
or eax, 1
test eax, eax
je 0x10056433
push esi
push dword [esp + 0x20]
lea eax, [esp + 0x1c]
push eax
call sym.user32.dll_git_remote_lookup
mov ebp, dword [esp + 0x30]
add esp, 0xc
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x10], eax
test eax, eax
js 0x10056487
mov edx, ebp
mov ecx, ebx
call fcn.100256f0
test eax, eax
jne 0x10056425
mov dword [esp + 0x10], 0xfffffffd
jmp 0x10056487
push ebp
mov edx, eax
lea ecx, [esp + 0x34]
call fcn.10076670
jmp 0x10056443
mov ebp, dword [esp + 0x24]
lea ecx, [esp + 0x30]
push edi
mov edx, ebp
call fcn.10029f60
add esp, 4
test eax, eax
js 0x10056487
mov edx, dword [esp + 0x20]
movq xmm0, qword [esp + 0x30]
mov eax, dword [esp + 0x38]
movq xmm1, qword [edx]
movq qword [edx], xmm0
mov dword [edx + 8], eax
movq qword [esp + 0x30], xmm1
jmp 0x10056487
push esi
push str.branch__s_does_not_have_an_upstream
push 4
call fcn.10028740
add esp, 0xc
mov dword [esp + 0x10], 0xfffffffd
mov ebp, dword [esp + 0x24]
push dword [esp + 0x18]
call sym.user32.dll_git_config_free
add esp, 4
test ebx, ebx
je 0x10056698
mov eax, dword [ebx + 0x70]
test eax, eax
je 0x100564ea
mov esi, dword [eax + 0x20]
test esi, esi
je 0x100564cf
push eax
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
test eax, eax
je 0x100564cf
mov eax, dword [ebx + 0x70]
push eax
mov esi, dword [eax + 0x28]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov eax, dword [ebx + 0x70]
push eax
mov esi, dword [eax + 0x2c]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [ebx + 0x70], 0
lea edi, [ebx + 0xc]
test edi, edi
je 0x1005651b
push dword [edi + 8]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 0
lea edi, [ebx + 0x20]
mov ecx, edi
call fcn.100208f0
test edi, edi
je 0x10056553
push dword [edi + 8]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 0
lea edi, [ebx + 0x34]
mov ecx, edi
call fcn.100208f0
test edi, edi
je 0x1005658b
push dword [edi + 8]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 0
lea edi, [ebx + 0x48]
mov ecx, edi
call fcn.100208f0
test edi, edi
je 0x100565c3
push dword [edi + 8]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 0
cmp dword [ebx + 0x68], 0
jbe 0x1005660a
xor ebp, ebp
nop dword [eax + eax]
mov eax, dword [ebx + 0x64]
mov esi, dword [fcn.10032f00]
mov ecx, esi
mov edi, dword [eax + ebp*4]
push dword [edi + 0x2c]
call dword [0x101a54ac]
call esi
mov esi, dword [fcn.10032f00]
add esp, 4
mov ecx, esi
push edi
call dword [0x101a54ac]
call esi
inc ebp
add esp, 4
cmp ebp, dword [ebx + 0x68]
jb 0x100565d0
mov ebp, dword [esp + 0x24]
lea edi, [ebx + 0x5c]
test edi, edi
je 0x1005663b
push dword [edi + 8]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
add esp, 4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 0
mov ecx, dword [ebx + 0x78]
call fcn.10078de0
push dword [ebx + 4]
mov esi, dword [fcn.10032f00]
mov ecx, esi
call dword [0x101a54ac]
call esi
mov esi, dword [fcn.10032f00]
add esp, 4
mov ecx, esi
push dword [ebx + 8]
call dword [0x101a54ac]
call esi
mov esi, dword [fcn.10032f00]
add esp, 4
mov ecx, esi
push dword [ebx]
call dword [0x101a54ac]
call esi
mov esi, dword [fcn.10032f00]
add esp, 4
mov ecx, esi
push ebx
call dword [0x101a54ac]
call esi
add esp, 4
cmp dword [esp + 0x40], 0
jbe 0x100566c2
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x100566c2
cmp eax, 0x1020156c
je 0x100566c2
mov esi, dword [fcn.10032f00]
mov ecx, esi
push eax
call dword [0x101a54ac]
call esi
add esp, 4
cmp dword [esp + 0x28], 0
jbe 0x100566e9
test ebp, ebp
je 0x100566e9
cmp ebp, 0x1020156c
je 0x100566e9
mov esi, dword [fcn.10032f00]
mov ecx, esi
push ebp
call dword [0x101a54ac]
call esi
add esp, 4
cmp dword [esp + 0x34], 0
jbe 0x10056713
mov eax, dword [esp + 0x30]
test eax, eax
je 0x10056713
cmp eax, 0x1020156c
je 0x10056713
mov esi, dword [fcn.10032f00]
mov ecx, esi
push eax
call dword [0x101a54ac]
call esi
add esp, 4
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret