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

Disassembly:
sub esp, 0x38
push ebx
push ebp
push esi
push edi
mov ebp, 0x1017306d
mov dword [esp + 0x20], ecx
xor ebx, ebx
mov dword [esp + 0x3c], 0x1017306d
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 0x10055dc4
push 0x1014f2e0
push str.invalid_argument
push 0x1014f2f8
push 3
call fcn.10028220
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
test edi, edi
jne 0x10055dec
push str.repo
push str.invalid_argument
push 0x1014f2f8
push 3
call fcn.10028220
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 0x10055e18
push str.refname
push str.invalid_argument
push 0x1014f2f8
push 3
call fcn.10028220
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov ecx, esi
call fcn.10013900
test eax, eax
jne 0x10055e3e
push esi
push str.reference__s_is_not_a_local_branch.
push 3
call fcn.10028220
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.100078b0
test eax, eax
js 0x10056227
push dword [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
call sym.user32.dll_git_config_snapshot
add esp, 8
test eax, eax
js 0x10056227
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x3c]
push str.branch._s.remote
push esi
call fcn.10055b40
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
test edi, edi
js 0x10055f97
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x24]
push str.branch._s.merge
push esi
call fcn.10055b40
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
test edi, edi
js 0x10055f93
cmp dword [esp + 0x44], ebx
je 0x10055f7b
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x10055f7b
mov esi, dword [esp + 0x3c]
mov eax, 0x10150d28
mov ecx, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10055ef3
test dl, dl
je 0x10055eef
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10055ef3
add eax, 2
add ecx, 2
test dl, dl
jne 0x10055ed3
xor eax, eax
jmp 0x10055ef8
sbb eax, eax
or eax, 1
test eax, eax
je 0x10055f43
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 0x10055f97
mov edx, ebp
mov ecx, ebx
call fcn.100251c0
test eax, eax
jne 0x10055f35
mov dword [esp + 0x10], 0xfffffffd
jmp 0x10055f97
push ebp
mov edx, eax
lea ecx, [esp + 0x34]
call fcn.10076180
jmp 0x10055f53
mov ebp, dword [esp + 0x24]
lea ecx, [esp + 0x30]
push edi
mov edx, ebp
call fcn.10029a40
add esp, 4
test eax, eax
js 0x10055f97
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 0x10055f97
push esi
push str.branch__s_does_not_have_an_upstream
push 4
call fcn.10028220
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 0x100561a8
mov eax, dword [ebx + 0x70]
test eax, eax
je 0x10055ffa
mov esi, dword [eax + 0x20]
test esi, esi
je 0x10055fdf
push eax
mov ecx, esi
call dword [0x1012b304]
call esi
add esp, 4
test eax, eax
je 0x10055fdf
mov eax, dword [ebx + 0x70]
push eax
mov esi, dword [eax + 0x28]
mov ecx, esi
call dword [0x1012b304]
call esi
add esp, 4
mov eax, dword [ebx + 0x70]
push eax
mov esi, dword [eax + 0x2c]
mov ecx, esi
call dword [0x1012b304]
call esi
add esp, 4
mov dword [ebx + 0x70], 0
lea edi, [ebx + 0xc]
test edi, edi
je 0x1005602b
push dword [edi + 8]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
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.100203c0
test edi, edi
je 0x10056063
push dword [edi + 8]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
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.100203c0
test edi, edi
je 0x1005609b
push dword [edi + 8]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
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.100203c0
test edi, edi
je 0x100560d3
push dword [edi + 8]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
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 0x1005611a
xor ebp, ebp
nop dword [eax + eax]
mov eax, dword [ebx + 0x64]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
mov edi, dword [eax + ebp*4]
push dword [edi + 0x2c]
call dword [0x1012b304]
call esi
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
add esp, 4
mov ecx, esi
push edi
call dword [0x1012b304]
call esi
inc ebp
add esp, 4
cmp ebp, dword [ebx + 0x68]
jb 0x100560e0
mov ebp, dword [esp + 0x24]
lea edi, [ebx + 0x5c]
test edi, edi
je 0x1005614b
push dword [edi + 8]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
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.100788f0
push dword [ebx + 4]
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
call dword [0x1012b304]
call esi
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
add esp, 4
mov ecx, esi
push dword [ebx + 8]
call dword [0x1012b304]
call esi
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
add esp, 4
mov ecx, esi
push dword [ebx]
call dword [0x1012b304]
call esi
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
add esp, 4
mov ecx, esi
push ebx
call dword [0x1012b304]
call esi
add esp, 4
cmp dword [esp + 0x40], 0
jbe 0x100561d2
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x100561d2
cmp eax, 0x1017306c
je 0x100561d2
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
push eax
call dword [0x1012b304]
call esi
add esp, 4
cmp dword [esp + 0x28], 0
jbe 0x100561f9
test ebp, ebp
je 0x100561f9
cmp ebp, 0x1017306c
je 0x100561f9
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
push ebp
call dword [0x1012b304]
call esi
add esp, 4
cmp dword [esp + 0x34], 0
jbe 0x10056223
mov eax, dword [esp + 0x30]
test eax, eax
je 0x10056223
cmp eax, 0x1017306c
je 0x10056223
mov esi, dword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_4]
mov ecx, esi
push eax
call dword [0x1012b304]
call esi
add esp, 4
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret