Function at 0x4a41f0
Capabilities:
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x17c
mov edx, dword [ebp + 0xc]
mov al, byte [edx]
and eax, 3
cmp al, 3
je 0x4a441e
dec al
je 0x4a441e
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
lea edi, [ebp - 0x54]
push 0xfb
mov dword [ebp - 0x78], ebx
push 0x10
mov dword [ebp - 0x74], esi
push 0x4a1510
mov dword [ebp - 0x38], 0
push edi
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
call fcn.004324b0
add esp, 0x10
test eax, eax
je 0x4a4457
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x14c], eax
test eax, eax
je 0x4a44ef
mov ecx, dword [ebp + 0xc]
mov dl, byte [ecx]
mov dword [ebp - 0x140], 0
and edx, 3
mov dword [ebp - 0x13c], 0
mov byte [ebp - 0x151], dl
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0
jmp 0x4a4311
mov ebx, dword [ebp - 0x14c]
mov eax, dword [ebx + 4]
cmp dword [eax + 4], 1
je 0x4a44c4
mov esi, dword [ebp - 0x14c]
mov esi, dword [esi + 0xa4]
mov dword [ebp - 0x14c], esi
test esi, esi
je 0x4a4553
cmp byte [ebp - 0x151], 2
jne 0x4a42e4
mov ebx, dword [ebp - 0x14c]
mov edx, dword [ebx + 4]
cmp dword [edx + 4], 1
jne 0x4a4828
mov esi, dword [ebx + 0xa8]
mov dword [ebp - 0xac], esi
mov eax, dword [esi]
mov edx, dword [eax + 0x30]
mov ecx, dword [eax + 0x34]
add dword [ebp - 0x148], edx
mov esi, dword [eax + 0x38]
adc dword [ebp - 0x144], ecx
mov edi, dword [eax + 0x3c]
add dword [ebp - 0x140], esi
mov dword [ebp - 0xa8], edx
adc dword [ebp - 0x13c], edi
mov dword [ebp - 0xa4], ecx
mov ecx, dword [ebp - 0xac]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov ebx, dword [eax + 0x34]
mov ecx, dword [eax + 0x30]
mov eax, dword [edx + 0x30]
mov edx, dword [edx + 0x34]
cmp edx, ebx
ja 0x4a4391
jb 0x4a438d
cmp eax, ecx
jae 0x4a4391
mov eax, ecx
mov edx, ebx
cmp dword [ebp - 0x134], edx
ja 0x4a43af
jb 0x4a43a3
cmp dword [ebp - 0x138], eax
jae 0x4a43af
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], edx
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa8]
cmp edx, edi
ja 0x4a43c9
jb 0x4a43c5
cmp eax, esi
jae 0x4a43c9
mov eax, esi
mov edx, edi
cmp dword [ebp - 0x12c], edx
ja 0x4a43e7
jb 0x4a43db
cmp dword [ebp - 0x130], eax
jae 0x4a43e7
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x12c], edx
mov ebx, dword [ebp - 0xac]
mov edx, dword [ebx + 0x5c]
mov eax, dword [ebx + 0x58]
cmp dword [ebp - 0x124], edx
ja 0x4a42f7
jb 0x4a440d
cmp dword [ebp - 0x128], eax
jae 0x4a42f7
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], edx
jmp 0x4a42f7
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x28]
or ah, 8
mov dword [ecx + 0x28], eax
jmp 0x4a4214
lea eax, [ebp - 0x14]
mov edx, dword [ebp + 8]
push edx
mov dword [ebp - 0x14], 0
push 0
push 4
push eax
call fcn.00469b10
mov ecx, eax
add esp, 0x10
xor ecx, 4
or ecx, edx
je 0x4a58d0
mov edx, dword [ebp - 0x38]
xor ebx, ebx
test edx, edx
je 0x4a446c
sub esp, 0xc
push edx
call sub.msvcrt.dll_free
add esp, 0x10
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x4a447f
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
add esp, 0x10
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x4a4492
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
add esp, 0x10
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x4a44a5
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
add esp, 0x10
xor eax, eax
test ebx, ebx
je 0x4a44bc
sub esp, 0xc
lea eax, [ebp - 0x54]
push eax
call fcn.00432460
xor eax, eax
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, dword [ebx + 0xa8]
mov dword [ebp - 0xac], esi
mov eax, dword [esi]
mov edx, dword [eax + 0x30]
mov ecx, dword [eax + 0x34]
mov esi, dword [eax + 0x38]
mov edi, dword [eax + 0x3c]
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xa4], ecx
jmp 0x4a436b
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0
mov edi, dword [ebp + 0xc]
mov al, byte [edi]
and eax, 3
cmp al, 2
je 0x4a47aa
mov esi, dword [ebp + 8]
mov edx, dword [esi + 0xa8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x148]
mov esi, dword [ebp - 0x13c]
mov dword [eax + 0x34], ecx
mov ecx, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov ebx, dword [ebp - 0x140]
mov eax, dword [ecx + 0xa8]
sub esp, 0xc
mov eax, dword [eax]
mov dword [eax + 0x3c], esi
mov dword [eax + 0x38], ebx
mov eax, dword [ecx + 0xa8]
mov esi, dword [ebp + 8]
mov ecx, dword [eax]
mov edx, dword [esi + 0x7c]
mov eax, dword [esi + 0x78]
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], edx
push esi
call fcn.004a2b00
add esp, 0x10
test eax, eax
jne 0x4a45d1
mov edx, dword [ebp - 0x38]
mov ebx, 1
jmp 0x4a445c
lea eax, [ebp - 0x60]
lea edi, [ebp - 0x68]
push eax
lea eax, [ebp - 0x70]
push edi
mov dword [ebp - 0x16c], eax
push eax
mov eax, dword [ebp + 8]
push eax
call dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x6c]
mov ebx, dword [ebp + 8]
mov eax, dword [ecx + 0xa8]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x70]
mov dword [ecx + 0x78], eax
mov dword [ecx + 0x7c], edx
mov eax, dword [ebx + 0xa8]
mov edx, dword [ebp - 0x64]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 0x68]
mov dword [ecx + 0x78], eax
mov dword [ecx + 0x7c], edx
mov ecx, dword [ebx + 0xa8]
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + 0x1c], edx
mov dword [ecx + 0x18], eax
mov eax, dword [ebx + 0xa8]
mov dword [eax + 0x58], 0
mov dword [eax + 0x5c], 0
call fcn.004325b0
add esp, 0x10
mov dword [ebp - 0x58], eax
test eax, eax
je 0x4a45c4
push eax
push eax
mov eax, dword [ebp - 0x134]
push eax
mov eax, dword [ebp - 0x138]
push eax
call fcn.0043f220
mov ecx, dword [ebp - 0x130]
pop esi
mov ebx, dword [ebp - 0x12c]
pop edi
push ebx
mov dword [ebp - 0x38], eax
push ecx
call fcn.0043f220
mov dword [ebp - 0x34], eax
pop eax
mov eax, dword [ebp - 0x128]
pop edx
mov edx, dword [ebp - 0x124]
shld edx, eax, 2
shl eax, 2
push edx
push eax
call fcn.0043f220
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x128]
add eax, 1
mov edx, dword [ebp - 0x124]
adc edx, 0
mov ecx, eax
mov ebx, edx
pop esi
shld ebx, ecx, 2
shld edx, eax, 4
shl ecx, 2
pop edi
shl eax, 4
sub eax, ecx
sbb edx, ebx
push edx
push eax
call fcn.0043f220
mov edx, dword [ebp - 0x38]
add esp, 0x10
mov dword [ebp - 0x2c], eax
test edx, edx
jne 0x4a46f2
mov esi, dword [ebp - 0x134]
or esi, dword [ebp - 0x138]
jne 0x4a485e
mov ebx, dword [ebp - 0x34]
test ebx, ebx
jne 0x4a470b
mov edi, dword [ebp - 0x12c]
or edi, dword [ebp - 0x130]
jne 0x4a485e
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jne 0x4a4724
mov ecx, dword [ebp - 0x124]
or ecx, dword [ebp - 0x128]
jne 0x4a485e
test eax, eax
je 0x4a485e
sub esp, 0xc
mov ebx, dword [ebp + 0xc]
push 0
push 0
push 0
push str.__DYNAMIC
mov edi, dword [ebx + 0x20]
push edi
call fcn.004398f0
add esp, 0x20
test eax, eax
je 0x4a475c
push esi
push esi
lea esi, [ebp - 0x78]
push esi
push eax
call fcn.0049f760
add esp, 0x10
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x38]
test eax, eax
je 0x4a4774
and byte [eax + 0x2b], 0xbf
mov eax, dword [eax + 0xa4]
test eax, eax
jne 0x4a4766
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x64]
test ecx, ecx
je 0x4a574d
mov edx, dword [ecx + 0xc0]
test edx, edx
jne 0x4a479b
jmp 0x4a4868
mov edx, dword [edx]
test edx, edx
je 0x4a4868
cmp dword [edx + 4], 1
jne 0x4a4791
mov eax, dword [edx + 0x18]
or byte [eax + 0x18], 2
jmp 0x4a4791
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0xa8]
mov eax, dword [edx + 8]
test eax, eax
je 0x4a47e9
sub esp, 0xc
mov edi, dword [eax + 0xc0]
xor ebx, ebx
push edi
call fcn.00438e20
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xa8]
mov esi, dword [edx + 0x28]
imul eax, esi
add dword [ebp - 0x148], eax
adc dword [ebp - 0x144], ebx
add esp, 0x10
mov eax, dword [edx + 0xc]
test eax, eax
je 0x4a456c
sub esp, 0xc
mov ebx, dword [eax + 0xc0]
push ebx
call fcn.00438e20
mov ebx, dword [ebp + 8]
mov edx, dword [ebx + 0xa8]
xor ebx, ebx
mov ecx, dword [edx + 0x28]
imul eax, ecx
add dword [ebp - 0x140], eax
adc dword [ebp - 0x13c], ebx
add esp, 0x10
jmp 0x4a456c
mov ecx, dword [ebp + 8]
mov ebx, 1
mov eax, dword [ecx + 4]
mov eax, dword [eax]
push eax
mov eax, dword [edx]
push eax
mov eax, dword [ecx]
push eax
push str._s:_relocatable_link_from__s_to__s_not_supported
call dword [0x4ee9a0]
mov dword [esp], 5
call fcn.00430870
mov edx, dword [ebp - 0x38]
add esp, 0x10
jmp 0x4a445c
mov ebx, 1
jmp 0x4a445c
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x4a4782
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x64]
mov dword [ebp - 0x94], edx
test edx, edx
je 0x4a5f10
mov dword [ebp - 0x11c], 0
mov ecx, dword [ebp - 0x94]
mov ecx, dword [ecx + 0xc0]
mov dword [ebp - 0x8c], ecx
test ecx, ecx
jne 0x4a48ec
jmp 0x4a5075
mov eax, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x94]
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push eax
push edi
push esi
push ebx
call fcn.0043a500
add esp, 0x10
test eax, eax
je 0x4a45c4
mov ecx, dword [ebp - 0x8c]
mov ecx, dword [ecx]
mov dword [ebp - 0x8c], ecx
test ecx, ecx
je 0x4a5075
mov ebx, dword [ebp - 0x8c]
mov ecx, dword [ebx + 4]
cmp ecx, 1
je 0x4a490e
lea eax, [ecx - 3]
cmp eax, 1
ja 0x4a48b0
mov dword [ebp - 0x11c], 1
jmp 0x4a48d6
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 0xb4]
mov dword [ebp - 0x150], eax
mov esi, eax
mov eax, dword [eax + 4]
cmp dword [eax + 4], 1
jne 0x4a48fa
test byte [esi + 0x2b], 0x40
jne 0x4a48d6
mov al, byte [esi + 0x28]
and eax, 7
dec al
je 0x4a494c
push ebx
push ebx
push 0x148e
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.0042fa10
add esp, 0x10
mov edi, dword [ebp - 0x150]
test byte [edi + 0x29], 8
je 0x4a498b
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x4a498b
mov edx, dword [ebp - 0x78]
push ecx
push ecx
push edi
push edx
call eax
add esp, 0x10
test eax, eax
je 0x4a45c4
mov edx, dword [ebp - 0x150]
or byte [edx + 0x2b], 0x40
jmp 0x4a48d6
mov eax, dword [ebp - 0x150]
call fcn.0049f590
test eax, eax
je 0x4a45c4
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x150]
mov dword [ebp - 0xdc], eax
mov edx, dword [ecx + 0xa8]
mov ecx, dword [ebp - 0x78]
mov ebx, dword [edx + 0x78]
mov esi, dword [edx + 0x58]
mov dword [ebp - 0xf4], ebx
mov al, byte [ecx + 1]
mov bl, al
shr al, 5
shr bl, 3
and eax, 3
and ebx, 3
mov byte [ebp - 0xe2], al
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 0xe1], bl
mov dword [ebp - 0xf8], eax
cmp bl, 3
je 0x4a4a0f
cmp bl, 2
je 0x4a58e0
cmp byte [ebp - 0xe2], 3
jne 0x4a5485
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0xa8]
mov ebx, dword [edx + 0x50]
lea eax, [esi + esi*2]
mov edx, dword [edx + 0xa0]
mov ecx, esi
lea eax, [ebx + eax*4]
mov dword [ebp - 0x100], edx
shl ecx, 2
mov edx, dword [ebp - 0x30]
cld
mov dword [ebp - 0xfc], eax
mov edi, edx
shr ecx, 2
xor eax, eax
rep stosd dword es:[edi], eax
cmp ebx, dword [ebp - 0xfc]
jae 0x4a5311
add ebx, 0xc
add edx, 4
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x108], 0
jmp 0x4a4ab3
mov dword [ebp - 0x108], 0
mov ecx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0xa0]
add ecx, 4
cmp dword [ebp - 0xfc], eax
mov dword [ebp - 0x9c], ecx
jbe 0x4a5311
mov edx, dword [ebp - 0x100]
add eax, 0xc
add edx, 4
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x100], edx
mov edx, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x9c]
sub edx, 0xc
mov dword [ebp - 0x98], edx
cmp dword [ecx - 4], 0xffffffff
je 0x4a4a7a
mov ebx, dword [ebp - 0xa0]
mov dword [ecx - 4], 0xffffffff
mov edx, dword [ebp - 0x150]
sub esp, 0xc
movzx esi, byte [ebx - 8]
mov eax, esi
and eax, 0xff
mov dword [ebp - 0x10c], eax
mov eax, dword [edx + 4]
mov edx, dword [ebp - 0x98]
push edx
call dword [eax + 0x4c]
mov ecx, dword [ebp - 0xf4]
add esp, 0x10
add ecx, eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xe0], ecx
test eax, eax
jne 0x4a4bb4
mov eax, dword [ebp - 0x108]
test eax, eax
jne 0x4a4a70
mov edi, dword [ebp - 0x100]
mov edi, dword [edi]
mov dword [ebp - 0x110], edi
test edi, edi
je 0x4a4d06
mov al, byte [edi + 0xc]
cmp al, 7
je 0x4a5021
mov edx, dword [edi + 4]
sub eax, 6
mov dword [ebp - 0xe0], edx
mov ebx, edi
cmp al, 1
jbe 0x4a5021
mov ecx, dword [ebp - 0x110]
mov eax, dword [ecx + 0x20]
test eax, eax
je 0x4a4d08
mov eax, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x9c]
and eax, 0x1e
cmp eax, 0xa
sete al
cmp dword [ebp - 0x10c], 0x1e
sete dl
or eax, edx
mov edx, dword [ebp - 0x110]
and eax, 0xff
mov dword [ebp - 0x108], eax
mov eax, dword [edx + 0x24]
mov dword [ecx - 4], eax
jmp 0x4a4a7a
mov ebx, dword [ebp - 0x150]
sub esp, 0xc
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebx + 4]
sub eax, 4
push eax
call dword [edx + 0x4c]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], edx
mov al, byte [ebp - 0x10c]
mov dword [ebp - 0x110], 0
add esp, 0x10
mov edx, dword [ebp - 0xf8]
sub esp, 0xc
mov byte [edx + 4], al
mov ecx, dword [ebp - 0xa0]
mov al, byte [ecx - 7]
mov byte [edx + 5], al
mov ebx, dword [ebp - 0xdc]
mov esi, dword [ebp - 0x150]
mov eax, dword [ebx + 4]
mov edx, dword [esi + 4]
mov ebx, dword [eax + 0x60]
mov eax, dword [ebp - 0x98]
add eax, 6
push eax
call dword [edx + 0x58]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
add ecx, 6
push ecx
push edx
push eax
call ebx
mov eax, dword [ebp - 0x78]
add esp, 0x10
xor edx, edx
test byte [eax + 3], 1
jne 0x4a4c6c
mov eax, dword [ebp - 0x110]
mov dl, 1
test eax, eax
je 0x4a4c6c
mov edi, dword [ebp - 0x110]
xor dl, dl
mov edi, dword [edi + 4]
mov dword [ebp - 0xe0], edi
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x58]
test eax, eax
je 0x4a4c88
mov eax, dword [ebp - 0xe0]
cmp byte [eax], 0
jne 0x4a4eb1
xor edx, edx
xor ecx, ecx
mov ebx, dword [ebp - 0xdc]
push edi
mov esi, dword [ebp - 0xf8]
mov eax, dword [ebx + 4]
push esi
push ecx
push edx
call dword [eax + 0x54]
add esp, 0xc
mov edx, dword [ebx + 4]
mov eax, dword [ebp - 0xf8]
add eax, 8
mov edi, dword [ebp - 0x114]
mov esi, dword [ebp - 0x118]
push eax
push edi
push esi
call dword [edx + 0x54]
mov eax, dword [ebx + 0xa8]
mov esi, dword [ebp - 0x9c]
mov eax, dword [eax + 0x58]
mov edi, dword [ebp - 0x104]
mov dword [esi - 4], eax
mov eax, dword [ebx + 0xa8]
mov ebx, dword [ebp - 0xf8]
mov dword [ebp - 0x84], edi
add dword [eax + 0x58], 1
adc dword [eax + 0x5c], 0
add ebx, 0xc
add esp, 0x10
mov dword [ebp - 0xf8], ebx
jmp 0x4a4a7a
xor ebx, ebx
cmp byte [ebp - 0xe1], 2
je 0x4a504e
ja 0x4a4f08
cmp byte [ebp - 0xe1], 1
je 0x4a4efb
mov edx, dword [ebp - 0x10c]
and edx, 0x1e
cmp edx, 4
je 0x4a4f9a
cmp dword [ebp - 0x10c], 0xf
je 0x4a4f9a
cmp edx, 6
je 0x4a5425
cmp dword [ebp - 0x10c], 0x10
je 0x4a5425
cmp edx, 8
je 0x4a558a
cmp dword [ebp - 0x10c], 0x11
je 0x4a558a
cmp edx, 2
je 0x4a56ed
cmp dword [ebp - 0x10c], 0xe
je 0x4a56ed
cmp edx, 0xa
je 0x4a5704
mov ecx, esi
cmp cl, 0x1e
je 0x4a5716
test byte [ebp - 0x10c], 0xe0
jne 0x4a5df7
cmp edx, 0xa
sete al
and eax, 0xff
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x110]
test eax, eax
je 0x4a56d5
mov al, byte [ebx + 0xc]
mov byte [ebp - 0x178], al
sub eax, 3
cmp al, 1
jbe 0x4a5cf7
cmp byte [ebp - 0x178], 5
je 0x4a5cd6
cmp byte [ebp - 0x178], 2
je 0x4a59cb
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
mov esi, dword [ebp - 0x110]
test esi, esi
je 0x4a5439
mov esi, dword [ebp - 0x110]
mov edi, dword [ebp - 0xdc]
mov dword [esi + 0x20], 1
mov eax, dword [edi + 0xa8]
mov eax, dword [eax + 0x58]
mov dword [esi + 0x24], eax
mov al, byte [ebp - 0x10c]
cmp dword [ebp - 0x10c], 0x82
jne 0x4a4bf6
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
cmp dword [ebp - 0xfc], ecx
jbe 0x4a5370
mov esi, ecx
xor edi, edi
jmp 0x4a4e9f
cmp al, 0x82
je 0x4a4ef8
test edi, edi
je 0x4a4f28
add esi, 0xc
cmp dword [ebp - 0xfc], esi
jbe 0x4a5370
mov al, byte [esi + 4]
cmp al, 0xa2
jne 0x4a4e84
test edi, edi
je 0x4a5370
dec edi
jmp 0x4a4e90
push edx
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx + 0x28]
shr eax, 0xf
xor eax, 0xffffffff
and eax, 1
push eax
mov eax, dword [ebp - 0xe0]
push eax
push ecx
call fcn.00432780
add esp, 0x10
mov ecx, edx
mov edx, eax
and eax, ecx
inc eax
je 0x4a45c4
add edx, 4
adc ecx, 0
mov eax, edx
and eax, ecx
inc eax
jne 0x4a4c8c
jmp 0x4a45c4
inc edi
jmp 0x4a4e90
test byte [ebp - 0x10c], 0xe0
je 0x4a4d28
mov eax, dword [ebp - 0x110]
test eax, eax
je 0x4a4a7a
mov ebx, dword [ebp - 0x110]
mov dword [ebx + 0x20], 1
jmp 0x4a4a7a
mov ebx, dword [ebp - 0x150]
sub esp, 0xc
mov eax, dword [ebx + 4]
push esi
call dword [eax + 0x4c]
mov ebx, dword [ebp - 0xf4]
add ebx, eax
add esp, 0x10
mov cl, byte [ebx]
test cl, cl
jne 0x4a4f5b
jmp 0x4a4e90
inc ebx
mov cl, byte [ebx]
test cl, cl
je 0x4a4e90
movsx eax, cl
mov edx, eax
sar edx, 0x1f
add dword [ebp - 0x118], eax
adc dword [ebp - 0x114], edx
cmp cl, 0x28
jne 0x4a4f50
xor eax, eax
lea edx, [ebx + 1]
mov al, byte [ebx + 1]
test byte [eax + eax + 0x5cf260], 4
je 0x4a4f95
inc edx
xor eax, eax
mov al, byte [edx]
test byte [eax + eax + 0x5cf260], 4
jne 0x4a4f86
lea ebx, [edx - 1]
jmp 0x4a4f50
mov esi, dword [ebp - 0x150]
mov eax, dword [esi + 0xa8]
mov edi, dword [eax + 8]
test edi, edi
je 0x4a4df7
mov eax, dword [edi + 0x58]
mov ecx, dword [ebp - 0x150]
mov edx, dword [edi + 0x54]
sub esp, 0xc
mov ebx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov eax, dword [edi + 0x50]
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x118], eax
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x98]
add eax, 8
push eax
call dword [edx + 0x4c]
add dword [ebp - 0x118], ebx
mov ebx, dword [edi + 0x20]
adc dword [ebp - 0x114], esi
mov esi, dword [edi + 0x24]
sub dword [ebp - 0x118], ebx
mov dword [ebp - 0x104], 0
sbb dword [ebp - 0x114], esi
add dword [ebp - 0x118], eax
adc dword [ebp - 0x114], edx
add esp, 0x10
jmp 0x4a4e15
mov ecx, dword [ebp - 0x110]
mov ebx, dword [ecx + 0x14]
mov al, byte [ebx + 0xc]
sub eax, 6
cmp al, 1
ja 0x4a5041
mov ebx, dword [ebx + 0x14]
mov al, byte [ebx + 0xc]
sub eax, 6
cmp al, 1
jbe 0x4a5034
mov edi, dword [ebp - 0x100]
mov dword [edi], ebx
jmp 0x4a4b66
mov eax, dword [ebp - 0xe0]
push 0
push 0
push eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 0x24]
push eax
call fcn.00432640
add esp, 0x10
test eax, eax
jne 0x4a4d28
jmp 0x4a4f08
mov ebx, dword [ebp - 0x94]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x94], ebx
test ebx, ebx
jne 0x4a4891
mov edi, dword [ebp + 0xc]
lea esi, [ebp - 0x78]
push ecx
push esi
push fcn.0049f760
mov edx, dword [edi + 0x20]
push edx
call fcn.00431f30
mov eax, dword [ebp - 0x11c]
add esp, 0x10
test eax, eax
je 0x4a5766
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x90], eax
test eax, eax
je 0x4a5766
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0xc0]
mov dword [ebp - 0x88], edx
test edx, edx
jne 0x4a50f8
jmp 0x4a5f2e
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
test eax, eax
je 0x4a5f2e
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx + 4]
lea eax, [edx - 3]
cmp eax, 1
ja 0x4a50e2
mov ebx, dword [ecx + 0x18]
cmp edx, 3
mov dword [ebp - 0xb8], ebx
je 0x4a593c
cmp edx, 4
je 0x4a5134
push eax
push eax
push 0xe8e
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.0042fa10
add esp, 0x10
mov edi, dword [ebp - 0xb8]
push eax
push eax
push 1
push 0
push 0
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 0x78]
push eax
push edi
call fcn.00439f30
add esp, 0x20
mov ebx, eax
test eax, eax
je 0x4a5fcd
mov esi, dword [eax + 0x24]
test esi, esi
js 0x4a5fa0
mov edx, dword [ebp - 0x74]
mov ebx, 1
mov edi, dword [ebp - 0xb8]
push eax
push eax
mov eax, dword [edi]
push eax
push edx
call fcn.0043c170
add esp, 0x10
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x4a5f8e
mov edx, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x90]
mov eax, dword [edx + 0xa8]
cmp ecx, dword [eax + 8]
je 0x4a5f80
cmp ecx, dword [eax + 0xc]
jne 0x4a5b6a
lea edi, [ebp - 0x68]
mov dword [ebp - 0xc0], edi
cmp dword [eax + 0x28], 8
je 0x4a59f8
push edi
lea edi, [ebp - 0x28]
mov eax, dword [edx + 4]
mov edx, dword [ebp - 0x88]
push edi
mov ecx, dword [edx + 0xc]
push ecx
mov edx, dword [edx + 8]
push edx
call dword [eax + 0x54]
mov ecx, dword [ebp - 0x74]
add esp, 0x10
mov dword [ebp - 0x164], ecx
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4a5912
mov eax, esi
mov edx, dword [ebp - 0xbc]
sar eax, 0x10
mov byte [ebp - 0x24], al
mov eax, esi
sar eax, 8
mov byte [ebp - 0x23], al
mov eax, esi
mov byte [ebp - 0x22], al
mov al, bl
neg eax
mov edi, dword [edx]
and eax, 0xffffff80
or eax, edi
mov byte [ebp - 0x21], al
mov edi, dword [ebp - 0x164]
mov ecx, dword [ebp - 0xb8]
lea edx, [ebp - 0x20]
push esi
mov eax, dword [edi + 4]
push edx
mov ebx, dword [ecx + 0xc]
lea edi, [ebp - 0x28]
push ebx
mov ecx, dword [ecx + 8]
push ecx
call dword [eax + 0x54]
mov ebx, dword [ebp - 0x74]
add esp, 0x10
mov dword [ebp - 0x164], ebx
mov esi, dword [ebp - 0x164]
mov eax, dword [esi + 0xa8]
mov ebx, dword [eax + 0x28]
mov eax, dword [ebp - 0xc0]
push 0
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
push esi
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x4a45c4
xor esi, esi
mov eax, dword [ebp - 0x74]
push eax
push esi
push ebx
push edi
call fcn.00469b10
add esp, 0x10
mov ecx, eax
xor ecx, ebx
or ecx, edx
jne 0x4a45c4
mov edx, dword [ebp - 0x74]
mov esi, dword [ebp - 0xc0]
xor ebx, ebx
mov eax, dword [edx + 0xa8]
mov ecx, dword [eax + 0x28]
add ecx, dword [esi]
adc ebx, dword [esi + 4]
mov dword [esi], ecx
mov dword [esi + 4], ebx
mov eax, dword [edx + 0xa8]
cmp ebx, dword [eax + 0x1c]
jg 0x4a52f8
jl 0x4a52cf
cmp ecx, dword [eax + 0x18]
ja 0x4a52f8
mov edi, dword [ebp - 0xc0]
cmp dword [ebp - 0x16c], edi
jne 0x4a50e2
mov eax, dword [eax + 0xc]
cmp ebx, dword [eax + 0x7c]
jl 0x4a50e2
jg 0x4a52f8
cmp ecx, dword [eax + 0x78]
jbe 0x4a50e2
push ebx
push ebx
push 0xf41
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.0042fa10
add esp, 0x10
jmp 0x4a50e2
mov edx, dword [ebp - 0xf8]
cmp edx, dword [ebp - 0x2c]
ja 0x4a560b
mov edx, dword [ebp - 0x150]
mov eax, dword [edx + 0xa8]
mov ecx, dword [eax + 8]
test byte [ecx + 0x18], 2
jne 0x4a55d2
mov ecx, dword [eax + 0xc]
test byte [ecx + 0x18], 2
jne 0x4a55a5
mov eax, dword [ebp - 0x78]
test byte [eax + 3], 1
jne 0x4a497c
mov eax, dword [ebp - 0x150]
call fcn.0049f3b0
test eax, eax
jne 0x4a497c
jmp 0x4a45c4
mov eax, dword [ebp - 0x78]
lea esi, [ebp - 0x54]
mov al, byte [eax + 3]
xor eax, 1
and eax, 1
push eax
mov eax, dword [ebp - 0xe0]
push 1
push eax
push esi
call fcn.00432640
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x4a45c4
mov ecx, dword [eax + 0xc]
test ecx, ecx
jne 0x4a53b2
jmp 0x4a554f
mov ecx, dword [ecx]
test ecx, ecx
je 0x4a554f
mov edx, dword [ebp - 0x114]
mov edi, dword [ecx + 0xc]
mov eax, dword [ebp - 0x118]
mov esi, dword [ecx + 8]
xor edx, edi
xor eax, esi
or edx, eax
jne 0x4a53a8
mov edi, dword [ebp - 0xa0]
cmp dword [ebp - 0xfc], edi
jbe 0x4a559e
mov edx, edi
mov ecx, dword [ebp - 0x9c]
add edx, 0xc
xor ebx, ebx
jmp 0x4a5410
cmp al, 0x82
je 0x4a5422
test ebx, ebx
jne 0x4a53fe
mov dword [ecx], 0xffffffff
cmp dword [ebp - 0xfc], edx
jbe 0x4a559e
add ecx, 4
add edx, 0xc
mov al, byte [edx - 8]
cmp al, 0xa2
jne 0x4a53f0
test ebx, ebx
je 0x4a56f7
dec ebx
jmp 0x4a53fe
inc ebx
jmp 0x4a53fe
mov edi, dword [ebp - 0x150]
mov eax, dword [edi + 0xa8]
mov edi, dword [eax + 0xc]
jmp 0x4a4fa9
mov eax, dword [ebp - 0x10c]
and eax, 0x1e
cmp eax, 0x16
je 0x4a4e42
cmp eax, 0x18
je 0x4a4e42
cmp eax, 0x1a
je 0x4a4e42
cmp eax, 0x14
je 0x4a4e42
cmp byte [ebp - 0xe2], 2
je 0x4a5f4a
cmp byte [ebp - 0xe2], 3
jne 0x4a4e42
jmp 0x4a4a7a
mov ecx, dword [ebp - 0xf8]
mov byte [ecx + 4], 4
mov byte [ecx + 5], 0
mov ebx, dword [ebp - 0xdc]
push eax
mov eax, ecx
mov edx, dword [ebx + 4]
add eax, 6
push eax
push 0
push 0
call dword [edx + 0x60]
mov eax, dword [ebp - 0x150]
add esp, 0x10
mov ecx, dword [ebp - 0x58]
mov edx, dword [eax]
test edx, edx
je 0x4a54c5
cmp byte [edx], 0
jne 0x4a5980
xor edx, edx
xor ecx, ecx
mov ebx, dword [ebp - 0xdc]
push edi
mov eax, dword [ebx + 4]
mov ebx, dword [ebp - 0xf8]
push ebx
push ecx
push edx
call dword [eax + 0x54]
mov edx, dword [ebp - 0x150]
add esp, 0xc
mov eax, dword [edx + 0xa8]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0xdc]
mov ebx, dword [eax + 4]
mov eax, dword [ebp - 0xf8]
add eax, 8
push eax
mov eax, dword [ecx + 0x58]
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x20]
add eax, dword [ecx + 0x50]
adc edx, dword [ecx + 0x54]
push edx
push eax
call dword [ebx + 0x54]
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx + 0xa8]
mov ecx, dword [ebp - 0xf8]
add dword [eax + 0x58], 1
adc dword [eax + 0x5c], 0
add ecx, 0xc
mov dword [ebp - 0xf8], ecx
mov ecx, dword [ebp - 0x150]
add esp, 0x10
mov edx, dword [ecx + 0xa8]
jmp 0x4a4a0f
lea edi, [ebp - 0x54]
push eax
push eax
push 0x10
push edi
call fcn.00432090
add esp, 0x10
mov edx, eax
test eax, eax
je 0x4a45c4
mov esi, dword [ebp - 0x118]
mov edi, dword [ebp - 0x114]
mov dword [eax + 8], esi
mov dword [eax + 0xc], edi
mov eax, dword [ebx + 0xc]
mov dword [edx], eax
mov al, 0x82
mov dword [ebx + 0xc], edx
jmp 0x4a4bf6
mov edx, dword [ebp - 0x150]
mov eax, dword [edx + 0xa8]
mov edi, dword [eax + 0x10]
jmp 0x4a4fa9
mov al, 0xc2
jmp 0x4a4bf6
push ebx
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
push edx
mov edx, dword [ebp - 0x150]
mov eax, dword [eax + 0x38]
push eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x78]
call fcn.0049fa80
add esp, 0x10
test eax, eax
jne 0x4a5346
jmp 0x4a45c4
push edx
mov edx, dword [ebp - 0x150]
mov eax, dword [eax]
mov edi, dword [eax + 0x34]
push edi
mov esi, dword [eax + 0x30]
lea eax, [ebp - 0x78]
push esi
lea esi, [ebp - 0x70]
push esi
call fcn.0049fa80
add esp, 0x10
test eax, eax
je 0x4a45c4
mov edi, dword [ebp - 0x150]
mov eax, dword [edi + 0xa8]
jmp 0x4a5339
mov edi, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x60]
mov ebx, dword [ebp - 0xdc]
push 0
push edi
push esi
push ebx
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x4a45c4
mov edi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0xf8]
sub ebx, edi
sar ebx, 2
lea eax, [ebx + ebx*4]
mov ecx, eax
shl ecx, 4
add eax, ecx
mov ecx, eax
shl ecx, 8
add eax, ecx
mov ecx, eax
shl ecx, 0x10
add eax, ecx
lea eax, [ebx + eax*2]
mov edx, eax
mov ecx, eax
sar edx, 0x1f
mov ebx, edx
mov esi, edx
shld ebx, ecx, 2
shl ecx, 2
mov dword [ebp - 0x15c], ebx
mov ebx, eax
mov dword [ebp - 0x160], ecx
shld esi, ebx, 4
shl ebx, 4
mov ecx, dword [ebp - 0xdc]
sub ebx, dword [ebp - 0x160]
push ecx
sbb esi, dword [ebp - 0x15c]
push esi
push ebx
push edi
call fcn.00469b10
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], edx
mov edx, dword [ebp - 0xec]
mov eax, dword [ebp - 0xf0]
xor edx, esi
xor eax, ebx
add esp, 0x10
or edx, eax
jne 0x4a45c4
mov ebx, dword [ebp - 0xf0]
mov esi, dword [ebp - 0xec]
add dword [ebp - 0x60], ebx
adc dword [ebp - 0x5c], esi
jmp 0x4a5320
cmp edx, 0x16
je 0x4a5e50
jg 0x4a5e2e
cmp edx, 0x14
jne 0x4a4df7
mov edi, 0x4eeb50
jmp 0x4a4fb1
mov al, 0xc2
mov dword [ecx], 0xffffffff
jmp 0x4a4bf6
test ebx, ebx
je 0x4a5716
mov al, byte [ebx + 0xc]
sub eax, 3
cmp al, 2
jbe 0x4a4d92
mov ebx, dword [ebp - 0x150]
sub esp, 0xc
mov eax, dword [ebp - 0x98]
mov edx, dword [ebx + 4]
add eax, 8
push eax
call dword [edx + 0x4c]
add esp, 0x10
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x104], 1
jmp 0x4a4e15
mov eax, dword [ebp + 0xc]
lea edi, [ebp - 0x78]
push ebx
push edi
push fcn.0049f760
mov ecx, dword [eax + 0x20]
push ecx
call fcn.00431f30
add esp, 0x10
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x4a5780
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
mov dword [ebp - 0x38], 0
add esp, 0x10
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x4a579a
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
mov dword [ebp - 0x34], 0
add esp, 0x10
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x4a57b4
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
mov dword [ebp - 0x30], 0
add esp, 0x10
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x4a57ce
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
mov dword [ebp - 0x2c], 0
add esp, 0x10
sub esp, 0xc
lea ecx, [ebp - 0x54]
push ecx
call fcn.00432460
mov ebx, dword [ebp + 8]
add esp, 0x10
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0x2c]
test eax, eax
je 0x4a5804
mov edx, dword [ebp + 0xc]
push ecx
push ecx
push edx
push ebx
call eax
add esp, 0x10
test eax, eax
je 0x4a4457
mov esi, dword [ebp + 8]
mov edx, dword [esi + 0xa8]
mov eax, dword [edx + 0x58]
mov edx, dword [edx]
mov dword [esi + 0x84], eax
lea eax, [eax + eax*2]
mov dword [edx + 0x24], 0
shl eax, 2
mov dword [edx + 0x20], eax
mov ecx, dword [esi + 0xa8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x20]
add eax, dword [ecx + 0x18]
adc edx, dword [ecx + 0x1c]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], edx
xor edx, edx
mov eax, dword [esi + 0xa8]
mov ecx, dword [eax]
mov ebx, dword [eax + 8]
mov eax, dword [eax + 0x28]
push edx
push eax
mov eax, dword [ecx + 0x34]
push eax
mov eax, dword [ecx + 0x30]
push eax
call fcn.004e77c0
mov dword [ebx + 0x68], eax
add esp, 0x10
mov eax, dword [esi + 0xa8]
xor edx, edx
mov ecx, dword [eax]
mov ebx, dword [eax + 0xc]
mov eax, dword [eax + 0x28]
push edx
push eax
mov eax, dword [ecx + 0x3c]
push eax
mov eax, dword [ecx + 0x38]
push eax
call fcn.004e77c0
add esp, 0x10
mov dword [ebx + 0x68], eax
push 0
mov eax, dword [esi + 0xa8]
mov edi, dword [eax + 0x24]
push edi
mov ebx, dword [eax + 0x20]
push ebx
push esi
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x4a4457
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x84]
test ecx, ecx
je 0x4a442f
mov edx, dword [ebp - 0x58]
mov eax, edi
call fcn.004a14a0
test eax, eax
je 0x4a4457
mov eax, 1
jmp 0x4a44bc
mov edx, dword [ebp - 0x150]
push 0
push 0
mov eax, dword [edx]
push eax
mov eax, dword [ecx + 0x24]
push eax
call fcn.00432640
add esp, 0x10
test eax, eax
jne 0x4a49f6
mov ebx, dword [ebp - 0x150]
mov edx, dword [ebx + 0xa8]
jmp 0x4a4a0f
mov eax, esi
mov ecx, esi
sar eax, 0x10
mov byte [ebp - 0x24], cl
mov byte [ebp - 0x22], al
mov eax, esi
sar eax, 8
mov esi, dword [ebp - 0xbc]
mov byte [ebp - 0x23], al
mov eax, dword [esi]
shl eax, 3
or eax, ebx
mov byte [ebp - 0x21], al
jmp 0x4a5225
mov eax, dword [ebx + 4]
cmp eax, 0x4eeb50
je 0x4a59bc
mov edx, dword [eax + 0xb4]
cmp edx, dword [ebp - 0x74]
je 0x4a5971
push eax
push eax
push 0xe86
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.0042fa10
mov esi, dword [ebp - 0xb8]
mov edx, dword [ebp - 0x74]
mov eax, dword [esi + 4]
add esp, 0x10
mov esi, dword [eax + 0xa8]
xor ebx, ebx
jmp 0x4a5173
push 0
mov eax, dword [ebx + 0x28]
shr eax, 0xf
xor eax, 0xffffffff
and eax, 1
push eax
push edx
push ecx
call fcn.00432780
mov ecx, edx
mov edx, eax
and eax, ecx
add esp, 0x10
inc eax
je 0x4a45c4
add edx, 4
adc ecx, 0
mov eax, edx
and eax, ecx
inc eax
jne 0x4a54c9
jmp 0x4a45c4
mov edx, dword [ebp - 0x74]
mov esi, 3
xor ebx, ebx
jmp 0x4a5173
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x10c], 0xd
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
jmp 0x4a4e15
mov ecx, dword [ebp - 0xbc]
mov edi, dword [ebp - 0xbc]
mov eax, dword [ecx]
mov edi, dword [edi + 0x10]
shr eax, 3
mov dword [ebp - 0xc4], edi
mov edi, eax
shr eax, 1
and edi, 1
mov dword [ebp - 0xc8], edi
mov ecx, eax
mov edi, dword [ebp - 0xbc]
and ecx, 1
shr eax, 1
mov dword [ebp - 0xcc], ecx
and eax, 1
mov edi, dword [edi + 8]
mov dword [ebp - 0xd0], eax
push eax
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x88]
lea edx, [ebp - 0x1c]
mov dword [ebp - 0xd4], edi
push edx
mov edi, dword [ecx + 0xc]
push edi
mov edx, dword [ecx + 8]
push edx
call dword [eax + 0x54]
mov edi, dword [ebp - 0x74]
add esp, 0x10
mov dword [ebp - 0x164], edi
mov eax, dword [edi + 4]
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4a5c72
mov eax, esi
mov dl, byte [ebp - 0xc8]
sar eax, 0x10
mov byte [ebp - 0x18], al
mov eax, esi
sar eax, 8
mov byte [ebp - 0x17], al
mov eax, esi
mov byte [ebp - 0x16], al
mov al, bl
neg eax
and eax, 0x10
mov bl, byte [ebp - 0xcc]
cmp dword [ebp - 0xc4], 1
sbb ecx, ecx
neg edx
mov edi, edx
mov dl, byte [ebp - 0xd0]
neg edx
mov esi, edx
mov dl, byte [ebp - 0xd4]
xor ecx, 0xffffffff
and edi, 8
shl edx, 5
and ecx, 0xffffff80
or eax, edx
and esi, 2
neg ebx
or eax, ecx
and ebx, 4
or eax, edi
or eax, ebx
or eax, esi
mov byte [ebp - 0x15], al
mov esi, dword [ebp - 0xb8]
lea edi, [ebp - 0x1c]
mov eax, dword [esi + 8]
or eax, dword [esi + 0xc]
je 0x4a5253
sub esp, 0xc
mov ecx, dword [ebp - 0xbc]
xor esi, esi
push ecx
call fcn.0043c480
mov ebx, eax
pop eax
pop edx
push esi
push ebx
call fcn.0043f280
add esp, 0x10
mov dword [ebp - 0xd8], eax
test eax, eax
je 0x4a5c65
sub esp, 0xc
mov edi, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xd8]
push eax
mov eax, dword [edi + 0xc]
push eax
mov eax, dword [edi + 8]
mov edi, dword [ebp - 0xbc]
push eax
mov eax, dword [ebp - 0x74]
push eax
push edi
call fcn.0043c4e0
add esp, 0x20
test eax, eax
je 0x4a5bfa
dec eax
je 0x4a5b7f
push ecx
push str.aout_link_reloc_link_order
push 0xf02
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.00430620
push eax
push str.aout_link_reloc_link_order
push 0xeb6
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.00430620
mov edi, dword [ebp - 0x78]
mov edx, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xbc]
mov eax, dword [edi + 0x1c]
mov ecx, dword [ecx + 0x20]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xb0], eax
mov eax, dword [edx + 8]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x88]
mov edx, dword [edx + 0xc]
mov dword [ebp - 0x174], edx
cmp dword [eax + 4], 3
je 0x4a5c4f
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x174]
push edx
push edx
mov edx, dword [ebp - 0x178]
push 0
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp - 0xb4]
push edx
push ecx
push eax
push 0
push edi
call dword [ebp - 0xb0]
add esp, 0x30
push edx
push esi
push ebx
mov ebx, dword [ebp - 0x88]
mov eax, dword [ebx + 0xc]
push eax
mov eax, dword [ebx + 8]
push eax
mov eax, dword [ebp - 0xd8]
push eax
mov eax, dword [ebp - 0x90]
push eax
mov eax, dword [ebp - 0x74]
push eax
call fcn.004317e0
add esp, 0x14
mov ebx, eax
mov eax, dword [ebp - 0xd8]
push eax
call sub.msvcrt.dll_free
add esp, 0x10
test ebx, ebx
je 0x4a45c4
mov esi, dword [ebp - 0x74]
lea edi, [ebp - 0x1c]
mov dword [ebp - 0x164], esi
jmp 0x4a5253
mov edx, dword [ebp - 0xb8]
mov edx, dword [edx + 4]
mov dword [ebp - 0x17c], edx
mov eax, dword [edx]
jmp 0x4a5bce
test ebx, ebx
jne 0x4a45c4
jmp 0x4a5b1f
mov eax, esi
mov ecx, esi
sar eax, 0x10
mov byte [ebp - 0x18], cl
neg ebx
mov byte [ebp - 0x16], al
mov eax, esi
mov esi, ebx
mov bl, byte [ebp - 0xc8]
neg ebx
sar eax, 8
mov edi, ebx
mov cl, byte [ebp - 0xcc]
mov bl, byte [ebp - 0xd0]
neg ecx
neg ebx
mov byte [ebp - 0x17], al
mov dl, byte [ebp - 0xd4]
mov eax, dword [ebp - 0xc4]
and esi, 8
and edi, 0x10
and ecx, 0x20
and ebx, 0x40
test eax, eax
setne al
add edx, edx
or eax, edx
or eax, esi
or eax, edi
or eax, ecx
or eax, ebx
mov byte [ebp - 0x15], al
jmp 0x4a5add
mov esi, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov dword [ebp - 0x114], edi
mov dword [ebp - 0x118], esi
mov dword [ebp - 0x104], 0
jmp 0x4a4e15
mov edi, dword [ebx + 0x14]
mov esi, dword [edi + 0x58]
cmp esi, 0x4eeb50
je 0x4a5d30
mov edx, dword [ebp - 0xdc]
cmp dword [esi + 0xb4], edx
je 0x4a5d30
push eax
push eax
push 0x139f
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_aoutx.h
call fcn.0042fa10
mov cl, byte [ebx + 0xc]
mov byte [ebp - 0x178], cl
add esp, 0x10
mov edx, dword [ebx + 0x1c]
mov eax, dword [ebx + 0x18]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], edx
mov edx, dword [esi + 0x20]
mov ecx, dword [esi + 0x24]
add dword [ebp - 0x118], edx
mov ebx, dword [edi + 0x54]
adc dword [ebp - 0x114], ecx
mov ecx, dword [edi + 0x50]
add dword [ebp - 0x118], ecx
adc dword [ebp - 0x114], ebx
cmp dword [ebp - 0x10c], 0x16
je 0x4a5efc
cmp dword [ebp - 0x10c], 0x18
je 0x4a5efc
cmp dword [ebp - 0x10c], 0x1a
je 0x4a5efc
cmp dword [ebp - 0x10c], 0x14
je 0x4a5efc
mov ebx, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x10c]
and ecx, 0xffffffe1
mov eax, dword [ebx + 0xa8]
cmp dword [eax + 8], esi
je 0x4a5ecf
cmp dword [eax + 0xc], esi
je 0x4a5ea2
cmp dword [eax + 0x10], esi
je 0x4a5e78
cmp byte [ebp - 0x178], 3
setne al
and eax, 0xff
mov dword [ebp - 0x104], 0
dec eax
and eax, 0xfffffff4
add eax, 0xe
or eax, ecx
mov dword [ebp - 0x10c], eax
jmp 0x4a4e15
mov esi, dword [ebp - 0x150]
sub esp, 0xc
mov eax, dword [ebp - 0x98]
mov edx, dword [esi + 4]
add eax, 8
push eax
call dword [edx + 0x4c]
add esp, 0x10
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x104], 0
jmp 0x4a4e15
cmp edx, 0x18
je 0x4a5e64
cmp edx, 0x1a
jne 0x4a4df7
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx + 0xa8]
mov edi, dword [eax + 0x10]
jmp 0x4a4fa9
mov edi, dword [ebp - 0x150]
mov eax, dword [edi + 0xa8]
mov edi, dword [eax + 8]
jmp 0x4a4fa9
mov edx, dword [ebp - 0x150]
mov eax, dword [edx + 0xa8]
mov edi, dword [eax + 0xc]
jmp 0x4a4fa9
cmp byte [ebp - 0x178], 3
setne al
and eax, 0xff
mov dword [ebp - 0x104], 0
lea eax, [eax + eax*8 + 8]
or eax, ecx
mov dword [ebp - 0x10c], eax
jmp 0x4a4e15
cmp byte [ebp - 0x178], 3
setne al
and eax, 0xff
mov dword [ebp - 0x104], 0
dec eax
and eax, 0xfffffff6
add eax, 0x10
or eax, ecx
mov dword [ebp - 0x10c], eax
jmp 0x4a4e15
cmp byte [ebp - 0x178], 3
setne al
and eax, 0xff
mov dword [ebp - 0x104], 0
dec eax
and eax, 0xfffffff5
add eax, 0xf
or eax, ecx
mov dword [ebp - 0x10c], eax
jmp 0x4a4e15
mov edi, dword [ebp - 0x10c]
or edi, 1
mov dword [ebp - 0x10c], edi
jmp 0x4a5d9a
mov esi, dword [ebp + 0xc]
lea ebx, [ebp - 0x78]
push edi
push ebx
push fcn.0049f760
mov esi, dword [esi + 0x20]
push esi
call fcn.00431f30
add esp, 0x10
jmp 0x4a5766
mov edx, dword [ebp - 0x90]
mov edx, dword [edx + 0xc]
mov dword [ebp - 0x90], edx
test edx, edx
jne 0x4a50c7
jmp 0x4a5766
test byte [ebp - 0x10c], 0xe0
jne 0x4a4e42
mov edx, dword [ebp - 0x150]
push ebx
push ebx
mov ecx, dword [ebp - 0xe0]
mov eax, dword [edx + 4]
push ecx
push edx
call dword [eax + 0x11c]
add esp, 0x10
test eax, eax
jne 0x4a4a7a
jmp 0x4a4e42
lea ecx, [ebp - 0x70]
mov dword [ebp - 0xc0], ecx
jmp 0x4a51bf
sub esp, 0xc
push 0x11
call fcn.00430870
add esp, 0x10
jmp 0x4a45c4
mov dword [eax + 0x24], 0xfffffffe
mov dword [eax + 0x20], 0
lea eax, [ebp - 0x78]
push esi
push esi
push eax
push ebx
call fcn.0049f760
add esp, 0x10
test eax, eax
je 0x4a45c4
mov esi, dword [ebx + 0x24]
jmp 0x4a516b
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb8]
push ebx
push ebx
mov edx, dword [eax + 0x1c]
push 0
push 0
push 0
push 0
xor esi, esi
mov ecx, dword [ecx + 4]
mov ebx, 1
push ecx
push eax
call dword [edx + 0x24]
mov edx, dword [ebp - 0x74]
add esp, 0x20
jmp 0x4a5173