Function at 0x4dc609
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
sub esp, 0x40
mov dword [ebp - 0xc], 0
cmp dword [ebp + 0xc], 0
jne 0x4dc628
mov eax, 0
jmp 0x4dca29
mov eax, dword [0x62f280]
mov eax, dword [eax + 0x8c]
mov eax, dword [eax + 8]
add eax, 0x438
cmp dword [ebp + 0x10], eax
jae 0x4dc64a
mov eax, 0
jmp 0x4dca29
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call fcn.004daf5f
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x43475048
je 0x4dc699
mov dword [esp], str.commit_graph_signature__X_does_not_match_signature__X
call fcn.004db500
mov dword [esp + 8], 0x43475048
mov edx, dword [ebp - 0x14]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ae2ca
call fcn.004db008
mov eax, 0
jmp 0x4dca29
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax + 4]
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 1
je 0x4dc6dc
movzx ebx, byte [ebp - 0x15]
mov dword [esp], str.commit_graph_version__X_does_not_match_version__X
call fcn.004db500
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae2ca
call fcn.004db008
mov eax, 0
jmp 0x4dca29
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax + 5]
mov byte [ebp - 0x16], al
call fcn.004dc273
cmp byte [ebp - 0x16], al
je 0x4dc727
call fcn.004dc273
movzx esi, al
movzx ebx, byte [ebp - 0x16]
mov dword [esp], str.commit_graph_hash_version__X_does_not_match_version__X
call fcn.004db500
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae2ca
call fcn.004db008
mov eax, 0
jmp 0x4dca29
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00471246
call fcn.004dc2bc
mov dword [ebp - 0x1c], eax
mov eax, dword [0x62f280]
mov eax, dword [eax + 0x8c]
mov eax, dword [eax + 8]
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov byte [eax + 8], dl
mov eax, dword [ebp - 0x10]
movzx edx, byte [eax + 6]
mov eax, dword [ebp - 0x1c]
mov byte [eax + 9], dl
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp + 0xc]
mov dword [eax], edx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp + 0x10]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax + 9]
movzx eax, al
add eax, 1
mov edx, eax
mov eax, edx
add eax, eax
add eax, edx
shl eax, 2
mov edx, eax
mov eax, dword [0x62f280]
mov eax, dword [eax + 0x8c]
mov eax, dword [eax + 8]
add eax, edx
add eax, 0x408
cmp dword [ebp + 0x10], eax
jae 0x4dc7de
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax + 9]
movzx ebx, al
mov dword [esp], str.commit_graph_file_is_too_small_to_hold__u_chunks
call fcn.004db500
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae2ca
call fcn.004db008
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov eax, 0
jmp 0x4dca29
mov dword [esp], 0
call fcn.00583824
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax + 9]
movzx edx, al
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], 8
mov dword [esp + 0x10], 0
mov edx, dword [ebp + 0x10]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583c03
test eax, eax
jne 0x4dc9fc
mov eax, dword [ebp - 0x1c]
add eax, 0x48
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4f494446
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x4dc53e
mov dword [esp + 4], 0x4f49444c
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ee9
mov eax, dword [ebp - 0x1c]
add eax, 0x50
mov dword [esp + 8], eax
mov dword [esp + 4], 0x43444154
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
add eax, 0x5c
mov dword [esp + 8], eax
mov dword [esp + 4], 0x45444745
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
add eax, 0x60
mov dword [esp + 8], eax
mov dword [esp + 4], 0x42415345
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004dc01b
cmp eax, 1
jle 0x4dc922
mov eax, dword [ebp - 0x1c]
add eax, 0x54
mov dword [esp + 8], eax
mov dword [esp + 4], 0x47444132
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
add eax, 0x58
mov dword [esp + 8], eax
mov dword [esp + 4], 0x47444f32
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x54]
test eax, eax
je 0x4dc922
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x40], 1
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x50]
test eax, eax
je 0x4dc96b
mov eax, dword [ebp - 0x1c]
add eax, 0x64
mov dword [esp + 8], eax
mov dword [esp + 4], 0x42494458
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ec0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x4dc576
mov dword [esp + 4], 0x42444154
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.00583ee9
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x64]
test eax, eax
je 0x4dc986
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x68]
test eax, eax
je 0x4dc986
call fcn.004cd675
jmp 0x4dc9b2
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x64], 0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x68], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x70]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x70], 0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax + 8]
movzx eax, al
sub edx, eax
add edx, ecx
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004db2b1
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call fcn.004dc4cb
test eax, eax
jne 0x4dc9ff
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.0058384e
mov eax, dword [ebp - 0x1c]
jmp 0x4dca29
nop
jmp 0x4dca00
nop
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.0058384e
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x70]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.cygwin1.dll_free
mov eax, 0
add esp, 0x40
pop ebx
pop esi
pop ebp
ret