Function at 0x4ceabe
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
mov dword [ebp - 0xc], 0
cmp dword [ebp + 0x10], 3
je 0x4cead7
cmp dword [ebp + 0x10], 4
jne 0x4ceade
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x3c], 0
mov eax, dword [0x62f280]
lea edx, [ebp - 0x38]
mov dword [esp + 8], edx
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00438e71
test eax, eax
je 0x4ceb82
cmp dword [ebp - 0xc], 0
je 0x4ceb67
mov dword [esp], str.the_requested_upstream_branch__s_does_not_exist
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae1f9
mov dword [ebp - 0x14], eax
mov dword [esp], str._nIf_you_are_planning_on_basing_your_work_on_an_upstream_nbranch_that_already_exists_at_the_remote__you_may_need_to_nrun__git_fetch__to_retrieve_it._n_nIf_you_are_planning_to_push_out_a_new_local_branch_that_nwill_track_its_remote_counterpart__you_may_want_to_use_n_git_push__u__to_set_the_upstream_config_as_you_push.
call fcn.004cde09
mov dword [esp + 4], eax
mov dword [esp], 0x1c
call fcn.004c94bd
mov eax, dword [ebp - 0x14]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x1bb
mov dword [esp], str.branch.c
call fcn.00499d7f
mov dword [esp], eax
call sub.cygwin1.dll_exit
mov dword [esp], str.not_a_valid_object_name:__s
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_strlen
mov edx, eax
mov dword [esp + 0x10], 0
lea eax, [ebp - 0x3c]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x38]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call fcn.004cde2d
test eax, eax
je 0x4cebc2
cmp eax, 1
je 0x4cebe7
jmp 0x4cec42
cmp dword [ebp - 0xc], 0
je 0x4cec5d
mov dword [esp], str.cannot_set_up_tracking_information__starting_point__s_is_not_a_branch
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], 0x5ba773
mov dword [esp], eax
call fcn.0048a6ba
test eax, eax
jne 0x4cec60
mov eax, dword [ebp - 0x3c]
mov dword [esp], eax
call fcn.004cea9b
test eax, eax
je 0x4cec60
cmp dword [ebp - 0xc], 0
je 0x4cec2e
mov dword [esp], str.cannot_set_up_tracking_information__starting_point__s_is_not_a_branch
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp - 0x3c]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov dword [ebp - 0x3c], 0
jmp 0x4cec60
mov dword [esp], str.ambiguous_object_name:__s
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae00f
nop
jmp 0x4cec61
nop
lea eax, [ebp - 0x38]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004e4c9d
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4cec97
mov dword [esp], str.not_a_valid_branch_point:__s
call fcn.004cde09
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae00f
cmp dword [ebp + 0x14], 0
je 0x4cecac
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp + 0x14]
mov dword [eax], edx
mov dword [ebp - 0x3c], 0
cmp dword [ebp + 0x18], 0
je 0x4cecc7
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call fcn.004cddda
mov eax, dword [ebp - 0x3c]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov dword [ebp - 0x3c], 0
nop
leave
ret