Function at 0x462200
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, 0x32c
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ecx + 0x20]
cmp dword [eax + 0x28], 1
je 0x462234
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dl, byte [ecx]
and edx, 3
cmp dl, 3
je 0x462be4
dec dl
je 0x462be4
mov edi, dword [eax + 0x30]
mov edx, dword [ebp + 0xc]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x2c8], edi
mov dword [ebp - 0x2c0], eax
mov al, byte [edx]
mov dword [ebp - 0x2c4], 1
and eax, 3
cmp al, 2
je 0x462282
mov al, byte [edx + 3]
shr al, 1
mov ecx, eax
and ecx, 1
mov dword [ebp - 0x2c4], ecx
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], esi
call fcn.00497460
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x46222a
mov esi, dword [ebp - 0x2c8]
test esi, esi
jne 0x462cbf
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0
mov edi, dword [ebp + 8]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xa8], 0
mov eax, dword [edi + 4]
mov ebx, dword [edi + 0x64]
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
mov eax, dword [eax + 0x1a0]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x28c], eax
test ebx, ebx
je 0x46338e
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x28c]
test eax, eax
je 0x462bcc
mov edx, dword [ebx]
mov dword [ebp - 0x308], edx
push edi
push edi
mov esi, dword [ebp - 0x28c]
push esi
push edx
call sub.msvcrt.dll_strcmp
add esp, 0x10
test eax, eax
je 0x4623ad
mov eax, str..gnu.attributes
mov ecx, 0x10
cld
mov esi, dword [ebp - 0x308]
mov edi, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x46240d
mov edx, dword [ebx + 0xc0]
test edx, edx
jne 0x4623c6
jmp 0x4623de
mov edx, dword [edx]
test edx, edx
je 0x4623de
cmp dword [edx + 4], 1
jne 0x4623c0
mov eax, dword [edx + 0x18]
mov edx, dword [edx]
mov ecx, dword [eax + 0x14]
and ch, 0xfe
test edx, edx
mov dword [eax + 0x14], ecx
jne 0x4623c6
sub esp, 0xc
mov eax, dword [ebp + 8]
push eax
call fcn.004962c0
add esp, 0x10
mov dword [ebp - 0x294], edx
mov dword [ebp - 0x298], eax
or edx, eax
jne 0x462b91
mov esi, dword [ebx + 0x14]
or esi, 0x8000
mov dword [ebx + 0x14], esi
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x46236a
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x148], eax
test eax, eax
je 0x463672
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x2a8], 0
mov edx, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x148]
mov edx, dword [edx + 0xac]
mov dword [ecx + 0x68], 0
mov dword [ebp - 0x288], edx
mov edi, dword [ecx + 0xc0]
test edi, edi
jne 0x4624d2
jmp 0x4629a0
mov edi, dword [edi]
test edi, edi
je 0x462609
mov edx, dword [edi + 4]
lea eax, [edx - 3]
cmp eax, 1
jbe 0x462750
dec edx
jne 0x4624c8
mov esi, dword [edi + 0x18]
mov ebx, dword [esi + 0xac]
mov dword [ebp - 0x27c], ebx
or byte [esi + 0x18], 2
test byte [esi + 0x16], 0x80
je 0x462507
mov dword [ebp - 0x2a8], 1
mov edx, dword [ebp - 0x288]
mov eax, dword [edx + 4]
cmp eax, 9
je 0x462770
cmp eax, 4
je 0x462770
mov ebx, dword [ebp - 0x2c4]
test ebx, ebx
je 0x46296b
mov ebx, dword [ebp - 0x2d8]
mov ecx, dword [esi + 0x68]
mov dword [ebp - 0x284], ecx
mov dword [ebp - 0x280], 0
mov eax, dword [ebx + 0x104]
test eax, eax
je 0x462562
sub esp, 0xc
push esi
call eax
add esp, 0x10
mov dword [ebp - 0x280], eax
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x34]
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x30]
cmp ebx, edx
ja 0x46257c
jb 0x462578
cmp ecx, eax
jae 0x46257c
mov ecx, eax
mov ebx, edx
cmp dword [ebp - 0x15c], ebx
ja 0x46259a
jb 0x46258e
cmp dword [ebp - 0x160], ecx
jae 0x46259a
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x15c], ebx
mov edx, dword [esi + 0xb4]
mov eax, dword [edx + 4]
cmp dword [eax + 4], 5
je 0x46285d
mov ebx, dword [ebp - 0x284]
test ebx, ebx
je 0x4624c8
mov eax, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x284]
add eax, ecx
mov ebx, dword [ebp - 0x148]
mov edx, dword [ebx + 0x68]
add edx, eax
mov dword [ebx + 0x68], edx
cmp dword [edi + 4], 1
je 0x462789
mov ebx, dword [ebp - 0x148]
test byte [ebx + 0x19], 4
je 0x46284a
mov esi, dword [ebp - 0x288]
mov edi, dword [edi]
mov ebx, dword [esi + 0x60]
add ebx, eax
test edi, edi
mov dword [esi + 0x60], ebx
jne 0x4624d2
mov ecx, dword [ebp - 0x148]
mov eax, dword [ecx + 0x68]
test eax, eax
je 0x4629a0
mov eax, dword [ecx + 0x14]
or eax, 4
mov dword [ecx + 0x14], eax
mov esi, dword [ebp - 0x148]
test byte [esi + 0x14], 1
jne 0x462643
test byte [esi + 0x18], 1
jne 0x462643
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
mov edi, dword [ebp - 0x148]
mov edi, dword [edi + 0xc]
mov dword [ebp - 0x148], edi
test edi, edi
jne 0x46249a
mov edi, dword [ebp - 0x2a8]
test edi, edi
jne 0x462bfe
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov edx, dword [ebp - 0x2c4]
mov al, byte [ecx + 1]
and eax, 0x18
cmp al, 0x18
setne al
and eax, 0xff
or eax, edx
test byte [ebx + 0x2b], 0x40
mov dword [ebx + 0x84], eax
jne 0x462ca6
push edi
push edi
mov esi, dword [ebp + 0xc]
push esi
mov ebx, dword [ebp + 8]
push ebx
call fcn.0044ca90
add esp, 0x10
test eax, eax
je 0x462c85
mov edi, dword [ebp + 8]
mov esi, dword [edi + 0x64]
test esi, esi
jne 0x4626cb
jmp 0x4629e7
mov esi, dword [esi + 0xc]
test esi, esi
je 0x4629e7
mov ebx, dword [esi + 0xac]
test byte [esi + 0x14], 4
je 0x462710
mov ecx, dword [ebx + 0x4c]
test ecx, ecx
je 0x4626f1
lea edx, [ebx + 0x4c]
mov eax, dword [ebp + 8]
call fcn.00456640
test eax, eax
je 0x462dfc
mov edx, dword [ebx + 0x5c]
test edx, edx
je 0x462710
lea edx, [ebx + 0x5c]
mov eax, dword [ebp + 8]
call fcn.00456640
test eax, eax
je 0x462dcc
nop
lea esi, [esi]
mov edx, dword [ebx + 0x1c]
mov eax, dword [ebx + 0x18]
xor edx, 0xffffffff
xor eax, 0xffffffff
mov dword [ebx + 0x50], 0
mov dword [ebx + 0x60], 0
or edx, eax
jne 0x4626c0
test byte [esi + 0x17], 8
jne 0x4629b4
push eax
push str.bfd_elf_final_link
push 0x2c5f
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.00430620
lea esi, [esi]
mov eax, 1
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0
jmp 0x4625c9
mov dword [ebp - 0x284], 0
mov dword [ebp - 0x280], 0
jmp 0x462562
mov esi, dword [ebp - 0x2c4]
test esi, esi
je 0x4625e1
mov eax, dword [ebp - 0x27c]
mov esi, dword [eax + 0x4c]
test esi, esi
je 0x4627ec
mov edx, dword [ebp - 0x288]
mov ebx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x38]
xor eax, eax
mov edx, dword [edx + 0x50]
mov dword [ebp - 0x2d4], edx
mov edx, ebx
or edx, ecx
je 0x4627d3
push ebx
push ecx
mov ebx, dword [esi + 0x24]
push ebx
mov ecx, dword [esi + 0x20]
push ecx
call fcn.004e77c0
add esp, 0x10
mov edx, dword [ebp - 0x2d4]
mov esi, dword [ebp - 0x280]
add eax, edx
mov ecx, dword [ebp - 0x288]
add eax, esi
mov dword [ecx + 0x50], eax
mov ebx, dword [ebp - 0x27c]
mov esi, dword [ebx + 0x5c]
test esi, esi
je 0x4624c8
mov eax, dword [ebp - 0x288]
mov ebx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x38]
mov edx, ebx
mov eax, dword [eax + 0x60]
mov dword [ebp - 0x2d0], eax
xor eax, eax
or edx, ecx
je 0x46282c
push ebx
push ecx
mov ebx, dword [esi + 0x24]
push ebx
mov ecx, dword [esi + 0x20]
push ecx
call fcn.004e77c0
add esp, 0x10
mov edx, dword [ebp - 0x2d0]
mov esi, dword [ebp - 0x280]
add eax, edx
mov ecx, dword [ebp - 0x288]
add eax, esi
mov dword [ecx + 0x60], eax
jmp 0x4624c8
mov edx, dword [ebp - 0x288]
mov ecx, dword [edx + 0x50]
add ecx, eax
mov dword [edx + 0x50], ecx
jmp 0x4624c8
test byte [edx + 0x29], 8
jne 0x4625ad
mov ebx, dword [edx + 0xa8]
mov eax, dword [ebx + 0x9c0]
test eax, eax
je 0x462bd9
mov ecx, dword [ebp - 0x2d8]
xor edx, edx
mov eax, dword [ecx + 0x188]
xor ecx, ecx
mov dl, byte [eax + 5]
push ecx
push edx
mov eax, dword [ebx + 0x7c]
push eax
mov eax, dword [ebx + 0x78]
push eax
call fcn.004e77c0
add esp, 0x10
xor edx, edx
cmp dword [ebp - 0x2ac], 0
ja 0x4628bf
cmp dword [ebp - 0x2b0], eax
jae 0x4628bf
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], edx
cmp edx, dword [ebp - 0x16c]
jb 0x4628d1
ja 0x462942
cmp eax, dword [ebp - 0x170]
ja 0x462942
test byte [esi + 0x14], 4
je 0x4625ad
mov ebx, dword [ebp - 0x27c]
xor edx, edx
mov eax, dword [ebx + 0x4c]
test eax, eax
je 0x4628ed
mov edx, dword [eax + 0x20]
mov ecx, dword [ebp - 0x27c]
mov eax, dword [ecx + 0x5c]
test eax, eax
je 0x4628ff
mov ecx, dword [eax + 0x20]
add edx, ecx
mov eax, edx
xor edx, edx
cmp dword [ebp - 0x2b4], 0
ja 0x462914
cmp dword [ebp - 0x2b8], eax
jb 0x46295d
xor edx, edx
mov eax, dword [esi + 0x68]
cmp edx, dword [ebp - 0x164]
jb 0x4625ad
cmp eax, dword [ebp - 0x168]
jbe 0x4625ad
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], edx
jmp 0x4625ad
mov ebx, dword [ebx + 0x298]
test ebx, ebx
je 0x4628d1
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], edx
jmp 0x4628d1
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], edx
jmp 0x462914
mov edx, dword [ebp - 0x2d8]
mov eax, dword [edx + 0x100]
test eax, eax
je 0x462770
push ecx
push ecx
push esi
mov edx, dword [ebp + 0xc]
push edx
call eax
add esp, 0x10
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x280], 0
jmp 0x462562
mov ebx, dword [ebp - 0x148]
mov eax, dword [ebx + 0x14]
and eax, 0xfffffffb
mov dword [ebx + 0x14], eax
jmp 0x462623
mov eax, dword [ebx + 0x44]
test eax, eax
jne 0x462738
push eax
push eax
mov eax, dword [ebx + 0x24]
push eax
mov eax, dword [ebx + 0x20]
push eax
call fcn.0043f220
add esp, 0x10
test eax, eax
je 0x462ddd
mov esi, dword [esi + 0xc]
mov dword [ebx + 0x44], eax
test esi, esi
jne 0x4626cb
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x2d8]
mov edx, dword [eax + 0xa8]
mov dword [eax + 0x84], 0
mov dword [ebp - 0x2cc], edx
xor eax, eax
mov dword [edx + 0x5c], 2
mov edx, dword [ecx + 0x188]
mov ebx, dword [ebp - 0x2cc]
xor ecx, ecx
mov al, byte [edx + 5]
mov esi, eax
mov dword [ebx + 0x94], 0
mov dword [ebx + 0x90], esi
xor eax, eax
mov cl, byte [edx + 0xb]
xor edx, edx
test cl, 0x20
sete al
setne dl
shl edx, cl
shl eax, cl
mov dword [ebx + 0x88], eax
mov dword [ebx + 0x8c], edx
cmp dword [ebp - 0x2ac], 0
ja 0x462c29
cmp dword [ebp - 0x2b0], 0x13
ja 0x462c29
mov dword [ebp - 0x2b0], 0x14
mov dword [ebp - 0x2ac], 0
mov esi, 0x320
xor edi, edi
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x2ac]
mov edx, dword [ebp - 0x2b0]
mov ebx, dword [eax + 0x20]
mov dword [ebx + 0x7c], ecx
mov dword [ebx + 0x78], edx
push eax
push eax
push edi
push esi
call fcn.0043f220
mov ecx, dword [ebp + 0xc]
mov dword [ebx + 0x80], eax
mov eax, dword [ecx + 0x20]
add esp, 0x10
mov esi, dword [eax + 0x80]
test esi, esi
je 0x463415
mov ebx, dword [ebp + 8]
mov esi, dword [ebx + 0xa8]
cmp dword [esi + 0x2ac], 0xff01
sbb eax, eax
xor eax, 0xffffffff
mov dword [ebp - 0x90], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x115], al
mov al, byte [ecx + 1]
and eax, 0x18
cmp al, 0x18
je 0x462ec3
push 1
mov eax, dword [esi + 0x9cc]
lea esi, [ebp - 0x68]
mov ebx, dword [eax + 0x2c]
push ebx
mov ecx, dword [eax + 0x28]
push ecx
mov eax, dword [ebp - 0x2cc]
add eax, 0x58
push eax
call fcn.00441b40
lea edx, [ebp - 0xc4]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov byte [ebp - 0x54], 0
mov byte [ebp - 0x53], 0
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x52], 0
mov dword [esp], 0
push 0x4eea88
push esi
push 0
mov dword [ebp - 0x2e4], edx
push edx
call fcn.004590a0
add esp, 0x20
dec eax
je 0x462e0d
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x2e4]
call fcn.00458f80
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x294]
push eax
mov eax, dword [ebp - 0x298]
push eax
push ebx
mov edi, dword [ebp + 8]
push edi
call fcn.00431610
mov dword [ebx + 0xc0], 0
mov dword [ebp - 0x29c], ebx
mov ebx, dword [ebx + 0xc]
add esp, 0x10
test ebx, ebx
jne 0x46236a
jmp 0x462418
mov eax, dword [ebx]
mov dword [ebp - 0x308], eax
jmp 0x462396
mov eax, dword [ebx + 0x84]
jmp 0x4628a0
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebx + 0x28]
or edi, 0x800
mov dword [ebx + 0x28], edi
mov eax, dword [esi + 0x20]
jmp 0x46224a
mov edx, dword [ebp + 0xc]
mov al, byte [edx]
and eax, 3
cmp al, 2
je 0x462668
push esi
mov ebx, dword [ebp + 8]
push ebx
push 0x456d40
mov ecx, dword [edx + 0x20]
push ecx
call fcn.00438cf0
add esp, 0x10
jmp 0x462668
mov esi, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x2b0]
mov edi, dword [ebp - 0x2ac]
mov edx, dword [ebp - 0x2ac]
shld edi, esi, 3
shld edx, eax, 5
shl esi, 3
shl eax, 5
add esi, eax
adc edi, edx
jmp 0x462a87
push eax
push eax
mov ebx, dword [ebp - 0x170]
mov esi, dword [ebp - 0x16c]
shld esi, ebx, 2
shl ebx, 2
push esi
push ebx
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0xa0], eax
test eax, eax
jne 0x463032
lea ecx, [ebp - 0xc4]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2e4]
call fcn.00458f80
xor eax, eax
jmp 0x462b89
push eax
push eax
push 0x2c40
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
add esp, 0x10
jmp 0x462696
push ebx
push ebx
push str..hash
mov ecx, dword [ebp - 0x2c0]
push ecx
call fcn.00431ce0
mov dword [ebp - 0xb8], eax
pop eax
pop edx
push str..gnu.version
mov eax, dword [ebp - 0x2c0]
push eax
call fcn.00431ce0
add esp, 0x10
mov dword [ebp - 0xb4], eax
jmp 0x4622c5
mov ecx, dword [ebp - 0x12c]
cmp dword [ecx + 4], 3
je 0x46596b
mov ebx, dword [ebp - 0x12c]
mov eax, dword [ebx + 0x18]
mov edx, dword [eax + 4]
push ebx
push ebx
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 0x1c]
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x21c]
push ecx
mov ebx, dword [ebp - 0x220]
push ebx
mov ecx, dword [ebp - 0x214]
mov ecx, dword [ecx + 0x20]
push ecx
push edx
push 0
push esi
call dword [eax + 0x1c]
add esp, 0x30
mov eax, dword [ebp - 0x12c]
sub esp, 0xc
mov ebx, dword [eax + 8]
mov esi, dword [eax + 0xc]
mov eax, dword [ebp + 8]
push eax
call fcn.00432ad0
add esp, 0xc
mov ecx, dword [ebp - 0x22c]
push ecx
mov edx, dword [ebp - 0x230]
push edx
mov dword [ebp - 0x310], eax
mov edx, dword [ebp - 0x310]
mov eax, dword [ebp - 0x310]
imul edx, esi
mov dword [ebp - 0x314], edx
mov dword [ebp - 0x30c], 0
mul ebx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 0x314]
add esi, eax
push esi
push ebx
push edi
mov esi, dword [ebp - 0x140]
push esi
mov ebx, dword [ebp + 8]
push ebx
call fcn.004317e0
add esp, 0x14
mov ebx, eax
push edi
call sub.msvcrt.dll_free
add esp, 0x10
test ebx, ebx
jne 0x4637b5
lea esi, [ebp - 0xc4]
mov dword [ebp - 0x2e4], esi
jmp 0x462b79
lea edi, [ebp - 0xc4]
mov dword [ebp - 0x2e4], edi
jmp 0x462b79
mov eax, dword [ebp - 0x230]
test eax, eax
je 0x46392d
lea ebx, [ebp - 0xc4]
mov dword [ebp - 0x2e4], ebx
jmp 0x462b79
mov ecx, dword [ebp + 8]
mov byte [ebp - 0x54], 3
mov byte [ebp - 0x53], 0
mov byte [ebp - 0x52], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov eax, dword [ecx + 0xa8]
cmp dword [eax + 0x2ac], 1
jbe 0x462ed0
mov ebx, 1
jmp 0x462e64
mov ecx, dword [ebp + 8]
inc ebx
mov eax, dword [ecx + 0xa8]
cmp dword [eax + 0x2ac], ebx
jbe 0x462ed0
push edx
push edx
push ebx
mov eax, dword [ebp + 8]
push eax
call fcn.00441a20
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x462e52
mov edi, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov eax, dword [edi + 0x84]
mov dword [ecx + 0xa8], eax
mov dword [ebp - 0x50], ebx
mov al, byte [edx]
and eax, 3
cmp al, 2
je 0x462ea3
mov eax, dword [ecx + 0x20]
mov edx, dword [ecx + 0x24]
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], eax
sub esp, 0xc
push 0
push ecx
push esi
push 0
mov eax, dword [ebp - 0x2e4]
push eax
call fcn.004590a0
add esp, 0x20
dec eax
je 0x462e52
jmp 0x462b79
cmp byte [ebp - 0x115], 0
jne 0x462afd
mov ebx, dword [ebp - 0x15c]
or ebx, dword [ebp - 0x160]
jne 0x463451
mov esi, dword [ebp - 0x2b4]
or esi, dword [ebp - 0x2b8]
jne 0x463426
mov edi, dword [ebp - 0x164]
or edi, dword [ebp - 0x168]
je 0x462f62
mov eax, dword [ebp - 0x2d8]
xor edx, edx
mov ebx, edx
mov ecx, dword [eax + 0x188]
xor eax, eax
mov al, byte [ecx + 9]
mov ecx, eax
shld ebx, ecx, 3
shld edx, eax, 5
shl ecx, 3
shl eax, 5
sub eax, ecx
sbb edx, ebx
push ebx
push ebx
mov ecx, dword [ebp - 0x168]
mov ebx, dword [ebp - 0x164]
imul ecx, edx
imul ebx, eax
mul dword [ebp - 0x168]
add ecx, ebx
lea edx, [ecx + edx]
push edx
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0xa8], eax
test eax, eax
je 0x462dfc
push ecx
push ecx
mov edx, dword [ebp - 0x2d8]
xor eax, eax
mov ebx, dword [ebp - 0x2b0]
mov ecx, dword [edx + 0x188]
xor edx, edx
imul ebx, edx
mov al, byte [ecx + 5]
mov ecx, dword [ebp - 0x2ac]
imul ecx, eax
mul dword [ebp - 0x2b0]
add ecx, ebx
lea edx, [ecx + edx]
push edx
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x462dcc
push edx
push edx
mov eax, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x2ac]
shld edx, eax, 5
shl eax, 5
push edx
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0x9c], eax
test eax, eax
je 0x462ddd
mov ebx, dword [ebp - 0x2b0]
mov esi, dword [ebp - 0x2ac]
shld esi, ebx, 2
shl ebx, 2
push eax
push eax
push esi
push ebx
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0x98], eax
test eax, eax
je 0x463415
push eax
push eax
push esi
push ebx
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0x94], eax
test eax, eax
je 0x463477
mov ecx, dword [ebp - 0x16c]
or ecx, dword [ebp - 0x170]
jne 0x462c58
mov esi, dword [ebp + 0xc]
mov esi, dword [esi + 0x20]
mov dword [ebp - 0x154], esi
mov edi, dword [esi + 0xf4]
mov dword [ebp - 0x26c], edi
test edi, edi
je 0x463114
mov ebx, edi
xor esi, esi
xor edi, edi
mov ecx, dword [ebx + 0x14]
test ch, 4
je 0x463098
mov edx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x30]
mov esi, edx
or esi, eax
jne 0x463087
and ch, 1
jne 0x463087
mov ecx, dword [ebx + 0xc4]
test ecx, ecx
je 0x463087
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
add eax, dword [ecx + 0x10]
adc edx, dword [ecx + 0x14]
mov esi, eax
mov edi, edx
add esi, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x463058
mov edx, dword [ebp - 0x26c]
mov ecx, dword [ebp - 0x2d8]
mov eax, dword [edx + 0x20]
mov edx, dword [edx + 0x24]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], edx
cmp dword [ecx + 0x1bc], 1
jne 0x4630f6
mov ebx, dword [ebp - 0x26c]
xor eax, eax
xor edx, edx
mov ecx, dword [ebx + 0x5c]
test cl, 0x20
sete al
setne dl
shl eax, cl
shl edx, cl
mov ecx, eax
mov ebx, edx
add ecx, 0xffffffff
adc ebx, 0xffffffff
add ecx, esi
adc ebx, edi
mov esi, ecx
neg eax
adc edx, 0
mov edi, ebx
neg edx
and esi, eax
and edi, edx
sub esi, dword [ebp - 0x278]
mov eax, dword [ebp - 0x154]
sbb edi, dword [ebp - 0x274]
mov dword [eax + 0xf8], esi
mov dword [eax + 0xfc], edi
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x64]
mov dword [ebp - 0x144], edx
test edx, edx
je 0x463233
mov ecx, dword [ebp + 8]
mov esi, dword [ebp - 0x144]
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x244], eax
mov ebx, dword [esi + 0xc0]
test ebx, ebx
je 0x46321c
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x11c], 0
cmp dword [ebx + 4], 1
je 0x463360
mov esi, dword [ebp - 0x23c]
inc esi
mov dword [ebp - 0x23c], esi
mov ecx, dword [ebp - 0x23c]
test ecx, ecx
je 0x463204
mov edx, dword [ebp - 0x238]
test edx, edx
je 0x463204
mov eax, dword [ebp - 0x248]
test eax, eax
je 0x463501
mov eax, dword [ebp - 0x11c]
test eax, eax
je 0x463501
push eax
push eax
mov ebx, dword [ebp - 0x248]
mov eax, dword [ebx + 0xb4]
push eax
push ebx
mov esi, dword [ebp - 0x11c]
mov eax, dword [esi + 0xb4]
push eax
push esi
mov eax, dword [ebp - 0x144]
push eax
push str._A_has_both_ordered____A_in__B__and_unordered____A_in__B__sections
call dword [0x4ee9a0]
add esp, 0x20
sub esp, 0xc
push 0x11
call fcn.00430870
xor eax, eax
add esp, 0x10
jmp 0x46222c
mov ebx, dword [ebx]
test ebx, ebx
jne 0x463176
mov ebx, dword [ebp - 0x238]
test ebx, ebx
jne 0x46351d
mov eax, dword [ebp - 0x144]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x144], eax
test eax, eax
jne 0x463128
sub esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
call fcn.0049a4a0
add esp, 0x10
test eax, eax
je 0x46222a
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx + 0x38]
mov dword [ebp - 0x2bc], ebx
test ebx, ebx
je 0x463274
mov esi, dword [ebp - 0x2bc]
mov edi, dword [esi + 0xa4]
and byte [esi + 0x2b], 0xbf
mov dword [ebp - 0x2bc], edi
test edi, edi
jne 0x46325a
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x140], eax
test eax, eax
je 0x463a84
mov edx, dword [ebp - 0x140]
mov edx, dword [edx + 0xc0]
mov dword [ebp - 0x12c], edx
test edx, edx
jne 0x4632eb
jmp 0x463a6d
lea eax, [edx - 3]
cmp eax, 1
jbe 0x4636e0
mov eax, dword [ebp - 0x12c]
push eax
mov eax, dword [ebp - 0x140]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.0043a500
add esp, 0x10
test eax, eax
je 0x4639ee
mov edx, dword [ebp - 0x12c]
mov edx, dword [edx]
mov dword [ebp - 0x12c], edx
test edx, edx
je 0x463a6d
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ecx + 4]
cmp edx, 1
jne 0x4632a3
mov eax, dword [ecx + 0x18]
mov eax, dword [eax + 0xb4]
mov dword [ebp - 0x2bc], eax
mov ebx, eax
mov eax, dword [eax + 4]
cmp dword [eax + 4], 5
jne 0x4632a3
mov esi, dword [ebp - 0x2d8]
mov eax, dword [ebx + 0xa8]
mov edx, dword [esi + 0x188]
mov al, byte [eax + 4]
cmp al, byte [edx + 0xc]
jne 0x4632af
test byte [ebx + 0x2b], 0x40
jne 0x4632d5
lea edi, [ebp - 0xc4]
mov edx, ebx
mov dword [ebp - 0x2e4], edi
mov eax, edi
call fcn.00460670
test eax, eax
je 0x462b79
or byte [ebx + 0x2b], 0x40
jmp 0x4632d5
mov edi, dword [ebx + 0x18]
mov esi, dword [edi + 0xb4]
mov eax, dword [esi + 4]
cmp dword [eax + 4], 5
je 0x463488
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x248], edi
inc eax
mov dword [ebp - 0x23c], eax
jmp 0x46318d
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
jmp 0x462668
lea eax, [ebp - 0xc4]
mov dword [ebp - 0x2e4], eax
jmp 0x462b79
push eax
push eax
mov edi, dword [ebp - 0x2b4]
push edi
mov esi, dword [ebp - 0x2b8]
push esi
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0xac], eax
test eax, eax
jne 0x462ef4
jmp 0x462c85
push eax
push eax
mov eax, dword [ebp - 0x15c]
push eax
mov eax, dword [ebp - 0x160]
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0xb0], eax
test eax, eax
jne 0x462ee2
lea edx, [ebp - 0xc4]
mov dword [ebp - 0x2e4], edx
jmp 0x462b79
mov ecx, dword [ebp - 0x244]
mov eax, dword [esi + 0xa8]
mov edx, dword [ecx + 0x188]
mov al, byte [eax + 4]
cmp al, byte [edx + 0xc]
jne 0x463376
push eax
push eax
push edi
push esi
call fcn.00442c50
add esp, 0x10
mov edx, eax
test eax, eax
je 0x463376
mov eax, dword [esi + 0xa8]
mov ecx, dword [eax + 0x2ac]
cmp edx, ecx
jae 0x463376
mov eax, dword [eax + 0x50]
mov eax, dword [eax + edx*4]
cmp byte [eax + 8], 0
jns 0x463376
cmp ecx, dword [eax + 0x28]
jbe 0x463376
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x11c], edi
inc eax
mov dword [ebp - 0x238], eax
jmp 0x46318d
push edi
push edi
mov esi, dword [ebp - 0x144]
push esi
push str._A_has_both_ordered_and_unordered_sections
call dword [0x4ee9a0]
add esp, 0x10
jmp 0x4631f0
push ecx
push ecx
mov eax, dword [ebp - 0x238]
xor edx, edx
shl eax, 2
push edx
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0x234], eax
test eax, eax
je 0x46222a
mov edi, dword [ebp - 0x144]
mov eax, dword [edi + 0xc0]
test eax, eax
je 0x463658
mov dword [ebp - 0x120], 0
mov edx, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x234]
mov dword [ecx + edx*4], eax
inc edx
mov eax, dword [eax]
mov dword [ebp - 0x120], edx
test eax, eax
jne 0x463560
push 0x454a10
push 4
push edx
push ecx
call sub.msvcrt.dll_qsort
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
add esp, 0x10
mov ebx, dword [ebp - 0x240]
mov esi, dword [ebp - 0x234]
mov edx, 0xffffffff
mov eax, dword [esi + ebx*4]
mov edi, dword [eax + 0x18]
mov eax, 0xffffffff
mov ecx, dword [edi + 0x5c]
shl eax, cl
test cl, 0x20
je 0x4635d5
mov edx, eax
xor eax, eax
sub esp, 0xc
mov esi, dword [ebp - 0x124]
and esi, edx
mov ebx, dword [ebp - 0x128]
mov edx, dword [ebp + 8]
and ebx, eax
push edx
call fcn.00432ad0
xor edx, edx
push edx
push eax
push esi
push ebx
call fcn.004e77c0
mov ecx, dword [ebp - 0x120]
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], edx
mov edi, dword [ebp - 0x240]
mov edx, dword [ebp - 0x234]
mov eax, dword [edx + edi*4]
mov dword [eax + 8], ebx
add ebx, dword [eax + 0x10]
mov dword [eax + 0xc], esi
mov dword [ebp - 0x128], ebx
adc esi, dword [eax + 0x14]
inc edi
add esp, 0x20
mov dword [ebp - 0x124], esi
mov dword [ebp - 0x240], edi
cmp edi, ecx
jne 0x4635ab
sub esp, 0xc
mov eax, dword [ebp - 0x234]
push eax
call sub.msvcrt.dll_free
add esp, 0x10
jmp 0x46321c
push 0x454a10
push 4
push 0
mov edi, dword [ebp - 0x234]
push edi
call sub.msvcrt.dll_qsort
add esp, 0x10
jmp 0x463641
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
jmp 0x462668
mov edx, dword [ebp + 8]
mov ecx, dword [ebp - 0x140]
mov eax, dword [edx + 4]
mov ebx, dword [ecx + 0xac]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x210], eax
push eax
push eax
mov esi, dword [ebp - 0x12c]
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
push eax
push edx
call fcn.0043c170
add esp, 0x10
mov dword [ebp - 0x214], eax
test eax, eax
je 0x4639d0
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax + 0x18]
mov eax, dword [ebx + 0x4c]
test eax, eax
mov esi, dword [edx + 8]
mov edi, dword [edx + 0xc]
mov dword [ebp - 0x220], esi
mov dword [ebp - 0x21c], edi
je 0x46417d
add ebx, 0x4c
mov dword [ebp - 0x224], ebx
mov ecx, dword [ebp - 0x224]
mov eax, dword [ecx + 4]
mov esi, dword [ecx + 0xc]
lea ebx, [eax*4]
add ebx, esi
mov esi, dword [ebp - 0x12c]
cmp dword [esi + 4], 3
jne 0x464135
mov eax, dword [edx + 4]
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x218], eax
test eax, eax
jne 0x46379e
push eax
push eax
push 0x2a06
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
add esp, 0x10
mov dword [ebx], 0
mov eax, dword [ebp - 0x214]
mov ebx, dword [eax + 0x24]
test ebx, ebx
jne 0x4638e0
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp - 0x12c]
mov al, byte [esi]
mov edx, dword [ebx + 8]
and eax, 3
mov ecx, dword [ebx + 0xc]
cmp al, 2
je 0x4637d9
mov edi, dword [ebp - 0x140]
add edx, dword [edi + 0x20]
adc ecx, dword [edi + 0x24]
mov eax, dword [ebp - 0x210]
mov esi, dword [eax + 0x188]
cmp byte [esi + 9], 0
je 0x463821
lea ebx, [ebp - 0x100]
xor edi, edi
mov dword [ebx - 0x10], edx
mov dword [ebx - 0xc], ecx
mov dword [ebx - 8], 0
mov dword [ebx - 4], 0
mov dword [ebx], 0
mov dword [ebx + 4], 0
xor eax, eax
inc edi
mov al, byte [esi + 9]
add ebx, 0x18
cmp eax, edi
ja 0x4637f3
cmp byte [esi + 0xa], 0x20
je 0x46399b
mov eax, dword [ebp - 0x218]
xor ebx, ebx
mov edx, eax
sar edx, 0x1f
mov edx, eax
mov dword [ebp - 0x31c], edx
mov edx, dword [ebp - 0x214]
mov eax, 0
mov dword [ebp - 0x320], eax
mov ecx, dword [edx]
add dword [ebp - 0x320], ecx
adc dword [ebp - 0x31c], ebx
mov ecx, dword [ebp - 0x320]
mov ebx, dword [ebp - 0x31c]
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0x104], ebx
mov ebx, dword [ebp - 0x224]
mov eax, dword [ebx]
mov edx, dword [eax + 0x44]
cmp dword [eax + 4], 9
je 0x463976
mov ecx, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x21c]
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], ebx
push eax
xor eax, eax
mov ebx, dword [ebp - 0x224]
mov al, byte [esi + 4]
mov edi, dword [ebx + 4]
imul eax, edi
lea edi, [ebp - 0x110]
add eax, edx
push eax
push edi
mov ecx, dword [ebp + 8]
push ecx
call dword [esi + 0x44]
add esp, 0x10
mov eax, dword [ebp - 0x224]
mov edx, dword [eax + 4]
inc edx
mov dword [eax + 4], edx
jmp 0x4632d5
mov edx, dword [ebp - 0x21c]
or edx, dword [ebp - 0x220]
je 0x4637b5
sub esp, 0xc
push eax
call fcn.0043c480
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x230], eax
pop edx
mov eax, dword [ebp - 0x22c]
pop ecx
push eax
mov eax, dword [ebp - 0x230]
push eax
call fcn.0043f280
add esp, 0x10
mov edi, eax
test eax, eax
je 0x462dee
sub esp, 0xc
push edi
mov eax, dword [ebp - 0x21c]
push eax
mov eax, dword [ebp - 0x220]
push eax
mov eax, dword [ebp + 8]
push eax
mov eax, dword [ebp - 0x214]
push eax
call fcn.0043c4e0
add esp, 0x20
test eax, eax
je 0x462d47
dec eax
je 0x462cf9
push esi
push str.elf_reloc_link_order
push 0x2a47
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.00430620
xor eax, eax
push edi
mov al, byte [esi + 3]
mov ecx, dword [ebx + 4]
imul eax, ecx
lea edi, [ebp - 0x110]
add eax, edx
push eax
push edi
mov eax, dword [ebp + 8]
push eax
call dword [esi + 0x3c]
add esp, 0x10
jmp 0x4638ca
mov ecx, dword [ebp - 0x218]
mov edx, dword [ebp - 0x214]
shl ecx, 8
mov dword [ebp - 0x104], 0
movzx eax, byte [edx]
mov dword [ebp - 0x218], ecx
mov edx, dword [ebp - 0x218]
add eax, edx
mov dword [ebp - 0x108], eax
jmp 0x463877
sub esp, 0xc
lea edi, [ebp - 0xc4]
push 0x11
call fcn.00430870
add esp, 0x10
mov dword [ebp - 0x2e4], edi
jmp 0x462b79
mov ecx, dword [ebp - 0x12c]
lea edx, [ebp - 0xc4]
mov dword [ebp - 0x2e4], edx
cmp dword [ecx + 4], 1
jne 0x462b79
mov ebx, dword [ebp - 0x2bc]
mov eax, dword [ebx + 4]
cmp dword [eax + 4], 5
jne 0x462b79
mov eax, dword [ebx + 0xa8]
mov edi, dword [ebp - 0x2d8]
mov dl, byte [eax + 4]
mov eax, dword [edi + 0x188]
mov al, byte [eax + 0xc]
cmp dl, al
je 0x462ddd
cmp al, 1
je 0x46412e
jb 0x4640c2
mov esi, str.ELFCLASS64
cmp al, 2
je 0x4640c7
push eax
push str.bfd_elf_final_link
push 0x2d52
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.00430620
mov ecx, dword [ebp - 0x140]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x140], ecx
test ecx, ecx
jne 0x463288
mov ebx, dword [ebp + 0xc]
test byte [ebx + 4], 2
jne 0x463aab
mov ebx, dword [ebx + 0x38]
test ebx, ebx
je 0x463aab
mov eax, dword [ebx + 4]
cmp dword [eax + 4], 5
je 0x4640f9
mov ebx, dword [ebx + 0xa4]
test ebx, ebx
jne 0x463a94
lea edi, [ebp - 0xc4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2e4], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x1c], 0
push ebx
push eax
push 0x45ab00
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx + 0x20]
push ecx
call fcn.00431f30
mov edx, dword [ebp - 0x24]
add esp, 0x10
test edx, edx
jne 0x46222a
mov ecx, dword [ebp - 0x2d8]
mov edx, dword [ecx + 0xdc]
test edx, edx
je 0x463b3a
cmp byte [ebp - 0x115], 0
jne 0x463b19
mov ebx, dword [ebp + 0xc]
mov al, byte [ebx + 1]
and eax, 0x18
cmp al, 0x18
je 0x463b3a
push fcn.004590a0
mov eax, dword [ebp - 0x2e4]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push eax
call edx
add esp, 0x10
test eax, eax
je 0x46222a
mov esi, dword [ebp + 8]
mov edi, dword [ebp - 0x2cc]
mov eax, dword [esi + 0x84]
mov dword [edi + 0x84], eax
mov eax, dword [ebp - 0x2c8]
test eax, eax
je 0x463d8d
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x20]
mov eax, dword [edx + 0x128]
test eax, eax
je 0x463d8d
cmp dword [eax + 0x58], 0x4eeb50
je 0x463d8d
mov eax, dword [eax + 0x8c]
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x268], eax
mov al, byte [ecx]
and eax, 3
cmp al, 3
je 0x463baf
dec al
je 0x463baf
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x264], 0
test eax, eax
je 0x463c96
mov ebx, dword [ebp + 8]
mov byte [ebp - 0x74], 3
mov byte [ebp - 0x73], 0
mov byte [ebp - 0x72], 0
mov edi, dword [ebx + 0x64]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x264], 0
test edi, edi
je 0x463c96
mov eax, dword [edi + 0xac]
mov ebx, dword [eax + 0x70]
test ebx, ebx
jle 0x463c85
mov esi, dword [eax + 0x6c]
test esi, esi
jg 0x463c14
push eax
push eax
push 0x2db9
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
add esp, 0x10
mov dword [ebp - 0x70], esi
lea esi, [ebp - 0x88]
mov dword [ebp - 0x2e8], esi
mov edx, esi
mov eax, dword [ebp + 8]
call fcn.004567f0
test eax, eax
je 0x46222a
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x24]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x84], edx
cmp dword [ebp - 0x264], ebx
mov edx, dword [eax + 0x188]
jge 0x463c61
mov dword [ebp - 0x264], ebx
push 0
xor eax, eax
mov al, byte [edx + 5]
mov ecx, dword [ebp - 0x268]
imul eax, ebx
add eax, ecx
push eax
mov eax, dword [ebp - 0x2e8]
push eax
mov eax, dword [ebp + 8]
push eax
call dword [edx + 0x24]
add esp, 0x10
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x463be8
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x20]
mov ebx, dword [edx + 0xec]
test ebx, ebx
je 0x463d74
lea esi, [ebp - 0x88]
mov dword [ebp - 0x2e8], esi
cld
mov edi, dword [ebp - 0x2e8]
lea esi, [ebx + 0x10]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
and byte [ebp - 0x73], 0xfc
push eax
push eax
mov eax, dword [ebx + 0x28]
push eax
mov eax, dword [ebx + 4]
push eax
call fcn.00441a20
add esp, 0x10
mov esi, eax
test eax, eax
je 0x463d23
mov eax, dword [eax + 0x58]
mov edx, dword [ebp - 0x2e8]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp + 8]
call fcn.004567f0
test eax, eax
je 0x46222a
mov eax, dword [esi + 0x58]
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x20]
add eax, dword [esi + 0x50]
adc edx, dword [esi + 0x54]
add eax, dword [ebx + 0x10]
adc edx, dword [ebx + 0x14]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], edx
mov ecx, dword [ebx + 0xc]
cmp dword [ebp - 0x264], ecx
jge 0x463d34
mov dword [ebp - 0x264], ecx
mov edi, dword [ebp - 0x2d8]
xor eax, eax
mov edx, dword [edi + 0x188]
push 0
mov edi, dword [ebp - 0x268]
mov al, byte [edx + 5]
imul eax, ecx
add eax, edi
push eax
mov esi, dword [ebp - 0x2e8]
push esi
mov ecx, dword [ebp + 8]
push ecx
call dword [edx + 0x24]
mov ebx, dword [ebx]
add esp, 0x10
test ebx, ebx
jne 0x463cb0
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x20]
mov eax, dword [edx + 0x128]
mov eax, dword [eax + 0x58]
mov edx, dword [eax + 0xac]
mov eax, dword [ebp - 0x264]
inc eax
mov dword [edx + 0x2c], eax
mov edx, dword [ebp - 0x2e4]
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x18], edx
push eax
push ecx
push 0x45ab00
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0x20]
push eax
call fcn.00431f30
mov eax, dword [ebp - 0x24]
add esp, 0x10
test eax, eax
jne 0x46222a
mov esi, dword [ebp - 0x2d8]
mov edx, dword [esi + 0xe0]
test edx, edx
je 0x463e0c
cmp byte [ebp - 0x115], 0
jne 0x463deb
mov al, byte [ebx + 1]
and eax, 0x18
cmp al, 0x18
je 0x463e0c
push fcn.004590a0
mov eax, dword [ebp - 0x2e4]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push eax
call edx
add esp, 0x10
test eax, eax
je 0x46222a
sub esp, 0xc
mov edi, dword [ebp - 0xbc]
push edi
call fcn.00496de0
mov eax, dword [ebp - 0xc4]
add esp, 0x10
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x204], eax
mov ebx, dword [eax + 0x70]
mov edi, dword [eax + 0x74]
or edi, ebx
je 0x46421e
mov edx, dword [ebp - 0xc0]
mov eax, dword [edx + 0xa8]
mov esi, dword [eax + 0x9a4]
test esi, esi
jne 0x463e74
push ecx
push ecx
push 0x22f5
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
mov eax, dword [ebp - 0x204]
mov edx, dword [ebp - 0xc0]
add esp, 0x10
mov ebx, dword [eax + 0x70]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x20c], eax
push edx
push edx
xor edx, edx
mov ecx, dword [eax + 0x188]
mov esi, dword [ebp - 0x204]
xor eax, eax
mov al, byte [ecx + 5]
mov ecx, ebx
mov ebx, dword [esi + 0x74]
imul ecx, edx
imul ebx, eax
mul dword [esi + 0x70]
add ecx, ebx
lea edx, [ecx + edx]
push edx
push eax
call fcn.0043f220
add esp, 0x10
mov dword [ebp - 0x1f4], eax
test eax, eax
je 0x46222a
mov eax, dword [ebp - 0x90]
test eax, eax
je 0x463efc
push eax
push eax
mov eax, dword [ebp - 0xc0]
xor edx, edx
mov eax, dword [eax + 0x84]
shld edx, eax, 2
shl eax, 2
push edx
push eax
call fcn.0043f280
add esp, 0x10
mov dword [ebp - 0x90], eax
test eax, eax
je 0x4645fc
mov eax, dword [ebp - 0x204]
mov edi, dword [eax + 0x74]
mov esi, dword [eax + 0x70]
mov edx, edi
or edx, esi
je 0x463fc8
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x188], 0
mov ecx, dword [ebp - 0x204]
mov ebx, dword [ebp - 0x188]
mov esi, dword [ecx + 0x80]
add ebx, esi
mov eax, dword [ebx + 0x10]
cmp eax, 0xffffffff
jne 0x4646ba
mov dword [ebx + 0x10], 0
mov esi, dword [ebp - 0x20c]
mov edi, dword [ebp - 0x90]
mov edx, dword [ebx + 0x24]
mov eax, dword [esi + 0x188]
lea edx, [edi + edx*4]
push edx
xor edx, edx
mov dl, byte [eax + 5]
mov esi, dword [ebx + 0x20]
imul edx, esi
mov ecx, dword [ebp - 0x1f4]
add edx, ecx
push edx
push ebx
mov edx, dword [ebp - 0xc0]
push edx
call dword [eax + 0x24]
mov eax, dword [ebp - 0x208]
xor edx, edx
inc eax
add esp, 0x10
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x204]
mov edi, dword [eax + 0x74]
mov esi, dword [eax + 0x70]
mov eax, dword [ebp - 0x188]
add eax, 0x28
cmp edx, edi
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x208]
jb 0x463f26
cmp eax, esi
jb 0x463f26
mov ebx, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0xc0]
mov eax, dword [ebx + 0x188]
mov edx, dword [ecx + 0xa8]
mov dword [ebp - 0x134], edx
mov ebx, edx
mov al, byte [eax + 5]
mov byte [ebp - 0x301], al
push 0
mov eax, dword [edx + 0x78]
mov edx, dword [edx + 0x7c]
add eax, dword [ebx + 0x70]
adc edx, dword [ebx + 0x74]
push edx
push eax
push ecx
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x464086
mov al, byte [ebp - 0x301]
mov dword [ebp - 0x324], 0
and eax, 0xff
mov ebx, dword [ebp - 0x324]
mov dword [ebp - 0x328], eax
mov ecx, dword [ebp - 0x328]
mov eax, dword [ebp - 0x328]
imul ebx, esi
imul ecx, edi
mul esi
add ecx, ebx
mov ebx, eax
mov eax, dword [ebp - 0xc0]
lea esi, [ecx + edx]
push eax
push esi
push ebx
mov eax, dword [ebp - 0x1f4]
push eax
call fcn.00469b10
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], edx
mov edx, dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x200]
xor edx, esi
xor eax, ebx
add esp, 0x10
or edx, eax
je 0x4641d7
sub esp, 0xc
mov eax, dword [ebp - 0x1f4]
push eax
call sub.msvcrt.dll_free
mov edx, dword [ebp - 0x204]
pop eax
mov eax, dword [edx + 0x80]
push eax
call sub.msvcrt.dll_free
mov ecx, dword [ebp - 0x204]
xor eax, eax
add esp, 0x10
mov dword [ecx + 0x80], 0
jmp 0x46222c
mov esi, str.ELFCLASSNONE
cmp dl, 1
je 0x465905
jb 0x4658ce
mov ebx, str.ELFCLASS64
cmp dl, 2
je 0x4658d3
push edi
push str.bfd_elf_final_link
push 0x2d5a
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.00430620
mov eax, dword [ebx + 0xa8]
mov eax, dword [eax + 0x2e4]
test eax, eax
je 0x463aa1
sub esp, 0xc
push eax
call sub.msvcrt.dll_free
mov eax, dword [ebx + 0xa8]
add esp, 0x10
mov dword [eax + 0x2e4], 0
jmp 0x463aa1
mov esi, str.ELFCLASS32
jmp 0x4640c7
push eax
push eax
push 1
push 0
push 0
mov eax, dword [edx + 4]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00439f30
add esp, 0x20
mov edx, eax
test eax, eax
je 0x46590c
mov al, byte [eax + 0xc]
sub eax, 3
cmp al, 1
jbe 0x464196
mov dword [edx + 0x20], 0xfffffffe
mov dword [ebx], edx
mov dword [ebp - 0x218], 0
jmp 0x4637a4
mov eax, dword [ebx + 0x5c]
test eax, eax
je 0x46593f
add ebx, 0x5c
mov dword [ebp - 0x224], ebx
jmp 0x463752
mov edx, dword [edx + 0x14]
mov dword [ebx], 0
mov eax, dword [edx + 0x58]
mov esi, dword [edx + 0x54]
mov ecx, dword [eax + 0x20]
mov ebx, dword [eax + 0x24]
add dword [ebp - 0x220], ecx
mov edi, dword [eax + 0xa8]
adc dword [ebp - 0x21c], ebx
mov ebx, dword [edx + 0x50]
add dword [ebp - 0x220], ebx
mov dword [ebp - 0x218], edi
adc dword [ebp - 0x21c], esi
jmp 0x4637a4
mov ebx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x1fc]
mov edi, dword [ebp - 0x1f4]
add dword [ebx + 0x78], edx
adc dword [ebx + 0x7c], ecx
sub esp, 0xc
push edi
call sub.msvcrt.dll_free
pop esi
mov esi, dword [ebp - 0x204]
mov ebx, dword [esi + 0x80]
push ebx
call sub.msvcrt.dll_free
mov dword [esi + 0x80], 0
add esp, 0x10
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x84]
test ecx, ecx
je 0x464379
mov edx, dword [ebp - 0x2cc]
mov ebx, dword [ebp - 0x2cc]
mov eax, dword [edx + 0x78]
mov ecx, dword [ebx + 0x70]
mov dword [ebp - 0x260], eax
mov edx, dword [edx + 0x7c]
add dword [ebp - 0x260], ecx
mov dword [ebp - 0x25c], edx
mov ebx, dword [ebx + 0x74]
adc dword [ebp - 0x25c], ebx
mov esi, dword [edi + 0xa8]
mov ebx, dword [esi + 0x298]
test ebx, ebx
je 0x464279
mov edx, dword [ebx]
test edx, edx
jne 0x464615
mov eax, dword [ebp - 0x2d8]
sub esp, 0xc
mov ebx, dword [ebp - 0xbc]
mov dword [esi + 0xec], 3
mov eax, dword [eax + 0x1c4]
mov dword [esi + 0xf4], 0
mov dword [esi + 0xf0], eax
mov dword [esi + 0xf8], 0
mov dword [esi + 0xfc], 0
push ebx
call fcn.00496cc0
mov dword [esi + 0x120], 0
mov dword [esi + 0x108], eax
mov dword [esi + 0x10c], edx
mov dword [esi + 0x124], 0
mov dword [esi + 0x110], 0
mov dword [esi + 0x114], 0
mov dword [esi + 0x118], 1
mov dword [esi + 0x11c], 0
push 1
mov ecx, dword [ebp - 0x25c]
lea eax, [esi + 0xe8]
push ecx
mov edx, dword [ebp - 0x260]
push edx
push eax
call fcn.00441b40
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0xa8]
add esp, 0x20
mov ecx, dword [ecx + 0x9cc]
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], edx
push 0
mov eax, dword [esi + 0x104]
push eax
mov eax, dword [esi + 0x100]
push eax
push ebx
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x46222a
push eax
push eax
mov eax, dword [ebp - 0xbc]
push eax
push ebx
call fcn.00496fa0
add esp, 0x10
test eax, eax
je 0x46222a
mov esi, dword [ebp + 8]
mov ebx, dword [esi + 0x64]
test ebx, ebx
je 0x4643f9
mov esi, dword [ebx + 0xac]
test byte [ebx + 0x14], 4
je 0x4643f2
mov edi, dword [ebp - 0x2d8]
mov eax, dword [edi + 0x108]
test eax, eax
je 0x4643ae
sub esp, 0xc
xor edi, edi
push ebx
call eax
add esp, 0x10
test eax, eax
je 0x4643b3
mov edi, 1
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x4643cf
lea edx, [esi + 0x4c]
mov ecx, edi
mov eax, dword [ebp + 8]
call fcn.004587f0
test eax, eax
je 0x46222a
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x4643eb
lea edx, [esi + 0x5c]
mov ecx, edi
mov eax, dword [ebp + 8]
call fcn.004587f0
test eax, eax
je 0x46222a
mov dword [ebx + 0x68], 0
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x464383
mov ebx, dword [ebp - 0x2c8]
test ebx, ebx
je 0x46554c
mov eax, dword [ebp + 0xc]
test byte [eax + 4], 8
je 0x4645e3
mov ecx, dword [ebp - 0x2c0]
test ecx, ecx
je 0x4645e3
mov edx, dword [ebp + 8]
sub esp, 0xc
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x1c0], eax
mov eax, dword [eax + 0x188]
mov al, byte [eax + 9]
mov byte [ebp - 0x18d], al
push edx
call fcn.00432ad0
mov dword [ebp - 0x1c4], eax
pop eax
pop edx
push str..rela.dyn
mov edi, dword [ebp + 8]
push edi
call fcn.00431c20
mov dword [ebp - 0x114], eax
pop ebx
pop esi
push str..rel.dyn
mov ecx, dword [ebp + 8]
push ecx
call fcn.00431c20
mov edx, dword [ebp - 0x114]
add esp, 0x10
mov dword [ebp - 0x2a0], eax
test edx, edx
je 0x4654a9
mov esi, dword [ebp - 0x114]
mov ebx, dword [esi + 0x30]
mov esi, dword [esi + 0x34]
mov dword [ebp - 0x2ec], esi
mov dword [ebp - 0x2f0], ebx
or esi, ebx
je 0x465478
test eax, eax
je 0x465478
mov edi, eax
mov eax, dword [eax + 0x30]
or eax, dword [edi + 0x34]
je 0x465478
mov eax, dword [ebp - 0x114]
mov eax, dword [eax + 0xc0]
mov dword [ebp - 0x17c], eax
test eax, eax
je 0x464da2
mov ebx, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x17c]
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x1dc], 1
mov dword [ebp - 0x1e4], 0
mov edi, dword [ebx + 0x188]
mov esi, dword [ebp - 0x174]
cmp dword [esi + 4], 1
je 0x4646d4
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov dword [ebp - 0x174], eax
test eax, eax
jne 0x46450b
mov edx, dword [ebp - 0x2a0]
mov edx, dword [edx + 0xc0]
mov dword [ebp - 0x184], edx
test edx, edx
je 0x46456b
mov dword [ebp - 0x178], edx
mov ecx, dword [ebp - 0x178]
cmp dword [ecx + 4], 1
je 0x464dc7
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x178], eax
test eax, eax
jne 0x464549
mov eax, dword [ebp - 0x1e4]
test eax, eax
jne 0x46553d
xor eax, eax
mov edx, dword [edi + 0x40]
mov al, byte [edi + 4]
mov edi, dword [edi + 0x44]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1c8], edx
mov dword [ebp - 0x1cc], edi
mov esi, dword [ebp - 0x17c]
xor ecx, ecx
xor ebx, ebx
test esi, esi
je 0x4645cb
mov eax, dword [ebp - 0x17c]
cmp dword [eax + 4], 1
jne 0x4645b9
mov eax, dword [eax + 0x18]
add ecx, dword [eax + 0x30]
adc ebx, dword [eax + 0x34]
mov esi, dword [ebp - 0x17c]
mov esi, dword [esi]
mov dword [ebp - 0x17c], esi
test esi, esi
jne 0x4645a4
mov edx, dword [ebp - 0x2ec]
mov eax, dword [ebp - 0x2f0]
xor edx, ebx
xor eax, ecx
or edx, eax
je 0x464e84
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x2a0], 0
jmp 0x464767
sub esp, 0xc
mov edi, dword [ebp - 0x1f4]
push edi
call sub.msvcrt.dll_free
xor eax, eax
add esp, 0x10
jmp 0x46222c
mov dword [ebx + 4], 0x12
mov dword [ebx + 0x38], 4
mov eax, dword [edi + 0x84]
xor edi, edi
shl eax, 2
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x30], 4
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x24], edi
push 1
mov esi, eax
mov eax, dword [ebp - 0x25c]
push eax
mov eax, dword [ebp - 0x260]
push eax
push ebx
call fcn.00441b40
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x25c], edx
push 0
mov eax, dword [ebx + 0x1c]
push eax
mov eax, dword [ebx + 0x18]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00469d90
add esp, 0x20
test eax, eax
jne 0x46222a
mov eax, dword [ebp + 8]
push eax
push edi
push esi
mov edi, dword [ebp - 0x90]
push edi
call fcn.00469b10
mov ecx, eax
add esp, 0x10
xor ecx, esi
or ecx, edx
jne 0x46222a
mov edi, dword [ebp + 8]
mov esi, dword [edi + 0xa8]
jmp 0x464279
push edx
push edx
push eax
mov eax, dword [ebp - 0xbc]
push eax
call fcn.004970a0
add esp, 0x10
mov dword [ebx + 0x10], eax
jmp 0x463f4d
mov eax, dword [esi + 0x18]
xor edx, edx
mov ebx, dword [eax + 0x30]
mov esi, dword [eax + 0x34]
xor eax, eax
mov al, byte [edi + 4]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov ecx, edx
add esp, 0x10
or ecx, eax
jne 0x464d49
xor eax, eax
xor edx, edx
mov al, byte [edi + 3]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov ebx, edx
add esp, 0x10
or ebx, eax
je 0x46451b
mov eax, dword [ebp - 0x1e4]
test eax, eax
je 0x4648c3
mov eax, dword [ebp - 0x1dc]
test eax, eax
jne 0x4648c3
push edx
push edx
mov eax, dword [ebp + 8]
push eax
push str._B:_Unable_to_sort_relocs___they_are_in_more_than_one_size
call dword [0x4ee9a0]
mov dword [esp], 5
call fcn.00430870
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x2a0], 0
add esp, 0x10
push eax
push eax
push 0x5b86fe
mov eax, dword [ebp - 0x2c0]
push eax
call fcn.00431ce0
add esp, 0x10
mov ebx, eax
test eax, eax
jne 0x464797
push edx
push edx
push 0x2e59
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
add esp, 0x10
mov esi, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x254], esi
add esi, eax
mov dword [ebp - 0x250], esi
cmp dword [ebp - 0x254], esi
jae 0x46554c
mov edi, dword [ebp - 0x2d8]
mov edx, dword [edi + 0x188]
push eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x254]
push eax
mov eax, dword [ebp - 0x2c0]
push eax
call dword [edx + 0x30]
mov ebx, dword [ebp - 0x34]
add esp, 0x10
mov ecx, dword [ebp - 0x38]
cmp ebx, 0
ja 0x464afa
cmp ecx, 0x12
ja 0x464afa
cmp ebx, 0
ja 0x464a56
cmp ecx, 0x11
jae 0x464a56
mov eax, ecx
mov esi, str..dynsym
xor eax, 6
or eax, ebx
je 0x4649df
cmp ebx, 0
ja 0x464a25
cmp ecx, 6
ja 0x464a25
mov eax, ecx
mov esi, str..hash
xor eax, 4
or eax, ebx
je 0x4649df
cmp ebx, 0
ja 0x4649da
cmp ecx, 4
ja 0x4649da
mov edx, ebx
or edx, ecx
jne 0x4649bc
mov eax, dword [ebp - 0x130]
test eax, eax
je 0x464957
mov esi, dword [ebp - 0x2d8]
xor eax, eax
mov edi, dword [ebp - 0x254]
mov edx, dword [esi + 0x188]
mov al, byte [edx + 6]
lea ecx, [eax + edi]
cmp dword [ebp - 0x250], ecx
jbe 0x46554c
mov ebx, dword [ebp - 0x2a0]
mov eax, dword [ebx + 0xac]
mov eax, dword [eax + 4]
cmp eax, 4
je 0x464947
cmp eax, 9
je 0x4648dc
cmp dword [ebp - 0x250], ecx
jbe 0x46554c
mov dword [ebp - 0x254], ecx
jmp 0x4647c6
mov dword [ebp - 0x1dc], 1
mov dword [ebp - 0x1e4], 1
jmp 0x46451b
mov dword [ebp - 0x38], 0x6ffffffa
mov dword [ebp - 0x34], 0
mov esi, dword [ebp - 0x130]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x130], 0
push ebx
mov edx, dword [ebp - 0x2d8]
mov ecx, dword [ebp - 0x254]
mov eax, dword [edx + 0x188]
push ecx
lea ecx, [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0x2c0]
push edx
call dword [eax + 0x34]
mov ebx, dword [ebp - 0x2d8]
xor eax, eax
mov ecx, dword [ebp - 0x254]
add esp, 0x10
mov edx, dword [ebx + 0x188]
mov al, byte [edx + 6]
add ecx, eax
jmp 0x4648ac
mov dword [ebp - 0x38], 0x6ffffff9
mov dword [ebp - 0x34], 0
jmp 0x4648ea
mov ebx, dword [ebp - 0x2d8]
xor eax, eax
mov ecx, dword [ebp - 0x254]
mov edx, dword [ebx + 0x188]
mov al, byte [edx + 6]
add ecx, eax
jmp 0x4648ac
mov eax, ecx
mov esi, str..gnu.version
xor eax, 0x6ffffff0
or eax, ebx
je 0x4649df
cmp ebx, 0
ja 0x464d09
cmp ecx, 0x6ffffff0
ja 0x464d09
mov eax, ecx
mov esi, str..preinit_array
xor eax, 0x21
or eax, ebx
je 0x464bfb
mov eax, ecx
mov esi, str..gnu.hash
xor eax, 0x6ffffef5
or eax, ebx
je 0x4649df
mov ecx, dword [ebp - 0x2d8]
xor eax, eax
mov edx, dword [ecx + 0x188]
mov ecx, dword [ebp - 0x254]
mov al, byte [edx + 6]
add ecx, eax
jmp 0x4648ac
mov esi, str..dynstr
push eax
push eax
push esi
mov eax, dword [ebp - 0x2c0]
push eax
call fcn.00431ce0
add esp, 0x10
mov ecx, eax
test ecx, ecx
je 0x464cf3
mov edx, dword [ecx + 0x58]
mov eax, dword [edx + 0xac]
cmp dword [eax + 4], 7
je 0x464c3e
mov eax, dword [edx + 0x20]
mov edx, dword [edx + 0x24]
add eax, dword [ecx + 0x50]
adc edx, dword [ecx + 0x54]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
jmp 0x464904
mov eax, ecx
xor eax, 0xc
or eax, ebx
je 0x464cbe
cmp ebx, 0
ja 0x464c60
cmp ecx, 0xc
ja 0x464c60
cmp ebx, 0
ja 0x4649bc
cmp ecx, 8
ja 0x4649bc
mov eax, ecx
mov edx, ebx
add eax, 0xffffffef
adc edx, 0xffffffff
cmp edx, 0
ja 0x464a74
mov dword [ebp - 0x24c], 9
cmp eax, 1
jbe 0x464a7e
mov dword [ebp - 0x24c], 4
mov edi, dword [ebp + 8]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov esi, dword [edi + 0xa8]
cmp dword [esi + 0x2ac], 1
jbe 0x464904
mov eax, ecx
mov dword [ebp - 0x13c], 1
xor eax, 0x12
or eax, ebx
mov dword [ebp - 0x2f8], eax
mov eax, dword [esi + 0x50]
mov edx, dword [ebp - 0x13c]
mov edi, dword [ebp - 0x24c]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x308], eax
cmp dword [eax + 4], edi
je 0x464b62
mov edi, dword [ebp - 0x13c]
inc edi
mov dword [ebp - 0x13c], edi
mov eax, dword [ebp - 0x13c]
cmp dword [esi + 0x2ac], eax
ja 0x464ab9
jmp 0x464904
mov eax, ecx
mov esi, str..preinit_array
xor eax, 0x20
or eax, ebx
je 0x464b4c
cmp ebx, 0
ja 0x464975
cmp ecx, 0x20
ja 0x464975
mov eax, ecx
mov esi, str..fini_array
xor eax, 0x1a
or eax, ebx
je 0x464b4c
cmp ebx, 0
ja 0x464bdb
cmp ecx, 0x1a
ja 0x464bdb
mov eax, ecx
mov esi, str..init_array
xor eax, 0x19
or eax, ebx
jne 0x4649bc
push edx
push edx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.00431c20
add esp, 0x10
mov ecx, eax
jmp 0x4649f3
xor edx, edx
mov eax, dword [eax + 8]
and eax, 2
mov edi, edx
or edi, eax
je 0x464ada
mov eax, dword [ebp - 0x2f8]
test eax, eax
je 0x464b87
mov eax, ecx
xor eax, 8
or eax, ebx
jne 0x464b9e
mov edi, dword [ebp - 0x308]
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x24]
add dword [ebp - 0x30], eax
adc dword [ebp - 0x2c], edx
jmp 0x464ada
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov edi, edx
or edi, eax
je 0x464bc4
mov edi, dword [ebp - 0x308]
cmp edx, dword [edi + 0x14]
jb 0x464ada
ja 0x464bc4
cmp eax, dword [edi + 0x10]
jbe 0x464ada
mov edi, dword [ebp - 0x308]
mov eax, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], eax
jmp 0x464ada
mov eax, ecx
mov esi, str..init_array
xor eax, 0x1b
or eax, ebx
je 0x464bfb
mov eax, ecx
mov esi, str..fini_array
xor eax, 0x1c
or eax, ebx
jne 0x4649bc
push edi
push edi
push esi
mov ebx, dword [ebp + 8]
push ebx
call fcn.00431c20
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x464cf3
mov eax, dword [eax + 0x30]
or eax, dword [ebx + 0x34]
jne 0x464c2d
push ecx
push ecx
push esi
push str.warning:__s_section_has_zero_size
call dword [0x4ee9a0]
add esp, 0x10
mov eax, dword [ebx + 0x30]
mov edx, dword [ebx + 0x34]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], eax
jmp 0x464904
push eax
push eax
push esi
push str.warning:_section__s_is_being_made_into_a_note
call dword [0x4ee9a0]
mov dword [esp], 0xf
call fcn.00430870
add esp, 0x10
jmp 0x462b79
mov eax, ecx
xor eax, 0xd
or eax, ebx
jne 0x4649bc
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x50]
sub esp, 0xc
push 1
push 0
push 0
push eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x20]
push eax
call fcn.004398f0
add esp, 0x20
mov ebx, eax
test eax, eax
je 0x464957
mov al, byte [eax + 0xc]
sub eax, 3
cmp al, 1
jbe 0x464cc6
mov esi, dword [ebp - 0x2d8]
xor eax, eax
mov ecx, dword [ebp - 0x254]
mov edx, dword [esi + 0x188]
mov al, byte [edx + 6]
add ecx, eax
jmp 0x4648ac
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x4c]
jmp 0x464c73
mov edx, dword [ebx + 0x18]
mov ecx, dword [ebx + 0x1c]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], edx
mov eax, dword [ebx + 0x14]
mov ebx, dword [eax + 0x58]
test ebx, ebx
je 0x464d36
add edx, dword [ebx + 0x20]
adc ecx, dword [ebx + 0x24]
add edx, dword [eax + 0x50]
adc ecx, dword [eax + 0x54]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
jmp 0x464904
push eax
push eax
push esi
push str.could_not_find_section__s
call dword [0x4ee9a0]
add esp, 0x10
jmp 0x462b79
mov eax, ecx
mov esi, str..gnu.version_d
xor eax, 0x6ffffffc
or eax, ebx
je 0x4649df
mov eax, ecx
mov esi, str..gnu.version_r
xor eax, 0x6ffffffe
or eax, ebx
je 0x4649df
jmp 0x4649bc
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
jmp 0x464904
xor eax, eax
xor edx, edx
mov al, byte [edi + 3]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov esi, edx
add esp, 0x10
or esi, eax
jne 0x464d92
mov eax, dword [ebp - 0x1e4]
test eax, eax
je 0x464d79
cmp dword [ebp - 0x1dc], 1
je 0x464733
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1e4], 1
jmp 0x46451b
push eax
push eax
mov eax, dword [ebp + 8]
push eax
push str._B:_Unable_to_sort_relocs___they_are_of_an_unknown_size
jmp 0x46473e
mov edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1dc], 1
mov dword [ebp - 0x1e4], 0
mov edi, dword [edx + 0x188]
jmp 0x46452d
mov eax, dword [ecx + 0x18]
xor edx, edx
mov ebx, dword [eax + 0x30]
mov esi, dword [eax + 0x34]
xor eax, eax
mov al, byte [edi + 4]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov ecx, edx
add esp, 0x10
or ecx, eax
jne 0x464e37
xor eax, eax
xor edx, edx
mov al, byte [edi + 3]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov ebx, edx
add esp, 0x10
or ebx, eax
je 0x464559
mov esi, dword [ebp - 0x1e4]
test esi, esi
je 0x464e1e
mov ebx, dword [ebp - 0x1dc]
test ebx, ebx
je 0x464733
mov dword [ebp - 0x1dc], 1
mov dword [ebp - 0x1e4], 1
jmp 0x464559
xor eax, eax
xor edx, edx
mov al, byte [edi + 3]
push edx
push eax
push esi
push ebx
call fcn.004e7900
mov esi, edx
add esp, 0x10
or esi, eax
jne 0x464d92
mov ecx, dword [ebp - 0x1e4]
test ecx, ecx
je 0x464e6b
cmp dword [ebp - 0x1dc], 1
je 0x464733
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1e4], 1
jmp 0x464559
mov dword [ebp - 0x194], 0
mov edi, dword [ebp - 0x1b8]
mov edx, dword [ebp - 0x194]
mov dword [ebp - 0x198], edi
push edx
mov eax, dword [ebp - 0x198]
push eax
mov eax, dword [ebp - 0x2ec]
push eax
mov eax, dword [ebp - 0x2f0]
push eax
call fcn.004e77c0
add esp, 0x10
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1b0], eax
or edx, eax
je 0x4645e3
xor eax, eax
mov dword [ebp - 0x19c], 0
mov al, byte [ebp - 0x18d]
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x10]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1b4], eax
push eax
push eax
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [ebp - 0x1ac]
imul ecx, eax
mov eax, dword [ebp - 0x1b0]
mul dword [ebp - 0x1a0]
lea esi, [ecx + edx]
push esi
push eax
call fcn.0043f280
add esp, 0x10
mov dword [ebp - 0x1a4], eax
test eax, eax
je 0x46505b
mov ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1d8], 0xffffff00
mov dword [ebp - 0x1d4], 0xffffffff
mov eax, dword [ecx + 0x188]
cmp byte [eax + 0xa], 0x20
je 0x464f6c
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1d4], 0xffffffff
mov ebx, dword [ebp - 0x114]
mov ebx, dword [ebx + 0xc0]
mov dword [ebp - 0x180], ebx
test ebx, ebx
je 0x464fba
mov esi, dword [ebp - 0x1c4]
mov dword [ebp - 0x2fc], 0
mov dword [ebp - 0x300], esi
mov edi, dword [ebp - 0x180]
cmp dword [edi + 4], 1
je 0x465093
mov ecx, dword [ebp - 0x180]
mov ecx, dword [ecx]
mov dword [ebp - 0x180], ecx
test ecx, ecx
jne 0x464f98
mov ebx, dword [ebp - 0x1b0]
mov dword [ebp - 0x1a8], ebx
push 0x453d10
mov edi, dword [ebp - 0x1b4]
push edi
push ebx
mov esi, dword [ebp - 0x1a4]
push esi
call sub.msvcrt.dll_qsort
mov esi, dword [ebp - 0x1a4]
add esp, 0x10
cmp dword [esi + 8], 1
jne 0x4651a6
mov ecx, esi
mov ebx, dword [ebp - 0x1b4]
add ecx, ebx
mov dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x138], ecx
inc eax
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
cmp dword [ebp - 0x1ac], 0
ja 0x465034
cmp dword [ebp - 0x1b0], eax
jbe 0x465262
mov eax, dword [ecx + 8]
mov edx, dword [ebp - 0x1b4]
add ecx, edx
dec eax
je 0x465006
mov edi, dword [ebp - 0x138]
mov ebx, dword [ebp - 0x130]
mov esi, edi
mov dword [ebp - 0x2a4], ebx
jmp 0x4651c8
push eax
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x1c]
push 0
push 0
push 0
mov edi, dword [ebp + 8]
push edi
push 0
push str.Not_enough_memory_to_sort_relocations
push edx
call dword [eax + 0x14]
add esp, 0x20
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x2a0], 0
jmp 0x464767
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x1ec], eax
mov esi, dword [eax + 0x8c]
test esi, esi
je 0x465229
mov ecx, dword [ebp - 0x1ec]
mov ebx, dword [ecx + 0x30]
mov eax, dword [ecx + 0x50]
add ebx, esi
mov edx, dword [ecx + 0x54]
mov dword [ebp - 0x1e8], ebx
cmp esi, ebx
jae 0x464fa8
mov ecx, dword [ebp - 0x300]
mov ebx, dword [ebp - 0x194]
imul ecx, edx
mul dword [ebp - 0x300]
push ebx
lea edx, [ecx + edx]
mov ecx, dword [ebp - 0x198]
push ecx
push edx
push eax
call fcn.004e77c0
mul dword [ebp - 0x1a0]
mov edi, dword [ebp - 0x1a4]
add esp, 0x10
add edi, eax
mov eax, dword [ebp - 0x1b8]
add eax, esi
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 0x18c], eax
lea ebx, [edi + 0x10]
push eax
push ebx
push esi
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x1c8]
add esp, 0xc
push ebx
mov eax, dword [ebp - 0x1ec]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ebx, dword [ebp - 0x1c0]
call dword [ebx + 0x11c]
mov edx, dword [ebp - 0x1d4]
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x1d8]
mov dword [edi], eax
mov dword [edi + 4], edx
mov eax, dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x1b8]
add edi, eax
mov eax, dword [ebp - 0x18c]
add eax, edx
add esp, 0x10
mov dword [ebp - 0x18c], eax
mov esi, dword [ebp - 0x2f4]
mov eax, dword [ebp - 0x18c]
sub eax, edx
cmp eax, dword [ebp - 0x1e8]
jae 0x464fa8
mov ecx, dword [ebp - 0x2f4]
mov edx, dword [ebp - 0x1b8]
add edx, ecx
mov dword [ebp - 0x2f4], edx
jmp 0x465115
mov esi, dword [ebp - 0x1a4]
mov dword [ebp - 0x2a4], 0
mov edi, esi
mov dword [ebp - 0x138], esi
mov dword [ebp - 0x130], 0
mov eax, dword [esi + 0x18]
mov edx, dword [edi + 0x18]
xor edx, eax
mov ebx, dword [esi + 0x1c]
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [edi + 0x1c]
xor ecx, ebx
and edx, eax
mov eax, dword [ebp - 0x1d4]
and ecx, eax
mov eax, ecx
or eax, edx
je 0x4651f0
mov edi, esi
mov eax, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
mov dword [esi + 4], edx
mov dword [esi], eax
mov eax, dword [ebp - 0x2a4]
inc eax
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebp - 0x2a4]
cmp dword [ebp - 0x1ac], 0
ja 0x46521f
cmp dword [ebp - 0x1b0], eax
jbe 0x465262
mov ebx, dword [ebp - 0x1b4]
add esi, ebx
jmp 0x4651c8
mov edx, eax
mov eax, dword [eax + 0x30]
or eax, dword [edx + 0x34]
je 0x464fa8
sub esp, 0xc
mov esi, dword [ebp - 0x1a4]
push esi
call sub.msvcrt.dll_free
add esp, 0x10
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x2a0], 0
jmp 0x464767
push 0x453dc0
mov ecx, dword [ebp - 0x1b4]
push ecx
mov edx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x1a8]
sub eax, edx
push eax
mov eax, dword [ebp - 0x138]
push eax
call sub.msvcrt.dll_qsort
mov edx, dword [ebp + 0xc]
add esp, 0x10
mov edx, dword [edx + 0x20]
mov dword [ebp - 0x1e0], edx
mov esi, dword [edx + 0x114]
test esi, esi
je 0x4652ad
mov edi, dword [esi + 0x58]
cmp edi, dword [ebp - 0x114]
je 0x4652fc
mov edx, dword [ebp - 0x114]
mov edi, dword [edx + 0xc0]
test edi, edi
je 0x4652d9
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x1bc], ecx
cmp dword [edi + 4], 1
je 0x465378
mov edi, dword [edi]
test edi, edi
jne 0x4652c9
sub esp, 0xc
mov ecx, dword [ebp - 0x1a4]
push ecx
call sub.msvcrt.dll_free
mov ecx, dword [ebp - 0x114]
add esp, 0x10
mov dword [ebp - 0x2a0], ecx
jmp 0x464767
mov ecx, dword [ebp - 0x1a8]
mov ebx, dword [ebp - 0x1a4]
lea eax, [ecx + ecx*4]
shl eax, 3
cmp dword [ebx + eax - 0x20], 4
jne 0x4652ad
add ebx, eax
xor ecx, ecx
inc ecx
cmp dword [ebp - 0x1ac], 0
ja 0x465464
cmp dword [ebp - 0x1b0], ecx
ja 0x465464
test ecx, ecx
je 0x4652ad
mov eax, dword [ebp - 0x1b8]
mov ebx, dword [esi + 0x30]
imul ecx, eax
xor ecx, ebx
or ecx, dword [esi + 0x34]
jne 0x4652ad
lea ecx, [edi + 0xc0]
mov edx, dword [edi + 0xc0]
test edx, edx
je 0x46544b
cmp dword [edx + 4], 1
je 0x465427
mov ecx, edx
mov eax, dword [edx]
mov edx, eax
jmp 0x46535e
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x1bc]
sub eax, edx
xor edx, edx
div dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x1b8]
mov ebx, dword [edi + 0x18]
imul eax, edx
mov ecx, dword [ebx + 0x8c]
xor edx, edx
mov esi, dword [ebx + 0x30]
mov dword [ebx + 0x54], 0
add esi, ecx
div dword [ebp - 0x1c4]
mov dword [ebp - 0x1f0], esi
mov dword [ebx + 0x50], eax
cmp ecx, esi
jae 0x4652d3
mov ebx, dword [ebp - 0x1b8]
add ebx, ecx
mov esi, ebx
push eax
push ecx
mov eax, dword [ebp - 0x1bc]
add eax, 0x10
push eax
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x1cc]
mov edx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x1bc]
add eax, edx
mov edx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x1b8]
add esi, eax
add esp, 0x10
mov eax, esi
mov ecx, ebx
sub eax, edx
cmp eax, dword [ebp - 0x1f0]
jae 0x4652d3
mov eax, dword [ebp - 0x1b8]
lea ebx, [eax + ebx]
jmp 0x4653cf
mov esi, dword [ebp - 0x1e0]
mov eax, dword [edx + 0x18]
cmp eax, dword [esi + 0x114]
jne 0x465370
mov eax, dword [edx]
mov dword [ebp - 0x180], edx
mov dword [ecx], eax
jmp 0x465374
mov eax, dword [ebp - 0x180]
mov dword [ecx], eax
mov dword [eax], 0
mov dword [edi + 0xc4], eax
jmp 0x4652ad
mov eax, dword [ebx - 0x48]
sub ebx, 0x28
cmp eax, 4
je 0x465319
jmp 0x465333
mov edx, dword [ebp - 0x2ec]
or edx, dword [ebp - 0x2f0]
je 0x4654a9
mov ecx, dword [ebp - 0x114]
mov ebx, dword [ebp - 0x1c0]
mov ecx, dword [ecx + 0xc0]
mov edi, dword [ebx + 0x188]
mov dword [ebp - 0x17c], ecx
jmp 0x464579
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x130], 0
test eax, eax
je 0x464767
mov esi, dword [ebp - 0x2a0]
mov eax, dword [esi + 0x30]
or eax, dword [esi + 0x34]
je 0x4645e3
mov ecx, dword [ebp - 0x2a0]
mov ebx, dword [ebp - 0x1c0]
mov ecx, dword [ecx + 0xc0]
mov edi, dword [ebx + 0x188]
mov dword [ebp - 0x184], ecx
mov ecx, dword [ebp - 0x2a0]
xor eax, eax
mov al, byte [edi + 3]
mov edx, dword [edi + 0x38]
mov edi, dword [edi + 0x3c]
mov ebx, dword [ebp - 0x184]
mov dword [ebp - 0x1cc], edi
mov esi, dword [ecx + 0x30]
mov edi, dword [ecx + 0x34]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1c8], edx
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x17c], ebx
mov dword [ebp - 0x2f0], esi
mov dword [ebp - 0x2ec], edi
jmp 0x464596
mov eax, dword [ebp - 0x1dc]
test eax, eax
je 0x4654f1
jmp 0x464579
mov eax, dword [ebp - 0x2c0]
test eax, eax
je 0x465732
push eax
push eax
mov edi, dword [ebp + 0xc]
push edi
mov esi, dword [ebp + 8]
push esi
mov esi, dword [ebp - 0x2d8]
call dword [esi + 0xa8]
add esp, 0x10
test eax, eax
je 0x462b79
mov edi, dword [ebp + 0xc]
mov dl, byte [edi + 3]
test dl, 0x20
je 0x465593
mov al, byte [edi]
and eax, 3
cmp al, 3
je 0x465598
dec al
je 0x465598
and edx, 0x40
je 0x465608
push ebx
push ebx
push 0x5b86fe
mov ecx, dword [ebp - 0x2c0]
push ecx
call fcn.00431ce0
add esp, 0x10
test eax, eax
je 0x465608
mov ebx, dword [eax + 0x8c]
mov edx, dword [eax + 0x30]
mov esi, ebx
add esi, edx
cmp ebx, esi
jae 0x465608
mov eax, dword [ebp - 0x2d8]
lea edi, [ebp - 0x48]
mov edx, dword [eax + 0x188]
push eax
push edi
push ebx
mov eax, dword [ebp - 0x2c0]
push eax
call dword [edx + 0x30]
mov eax, dword [ebp - 0x48]
add esp, 0x10
xor eax, 0x16
or eax, dword [ebp - 0x44]
je 0x4658ab
mov eax, dword [ebp - 0x2d8]
mov edx, dword [eax + 0x188]
xor eax, eax
mov al, byte [edx + 6]
add ebx, eax
cmp esi, ebx
ja 0x4655d2
mov edx, dword [ebp - 0x2c0]
mov edx, dword [edx + 0x64]
mov dword [ebp - 0x308], edx
test edx, edx
je 0x465732
mov ecx, dword [ebp - 0x308]
mov eax, dword [ecx + 0x14]
test ah, 1
je 0x46571b
mov ebx, dword [ecx + 0x30]
mov esi, dword [ecx + 0x34]
mov dword [ebp - 0x14c], esi
mov dword [ebp - 0x150], ebx
or esi, ebx
je 0x46571b
mov ebx, dword [ecx + 0x58]
cmp ebx, 0x4eeb50
je 0x46571b
test eax, 0x100000
je 0x46571b
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x20]
cmp dword [eax + 0xcc], ecx
je 0x46571b
cmp dword [eax + 0xd0], ecx
je 0x46571b
mov eax, str..dynstr
mov esi, dword [ecx]
cld
mov ecx, 8
mov edi, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x465835
mov eax, dword [ebp - 0x308]
sub esp, 0xc
mov edi, dword [ebp + 8]
mov ebx, dword [eax + 0x50]
mov esi, dword [eax + 0x54]
push edi
call fcn.00432ad0
add esp, 0xc
mov ecx, dword [ebp - 0x14c]
push ecx
mov edx, dword [ebp - 0x150]
push edx
mov dword [ebp - 0x330], eax
mov edx, dword [ebp - 0x330]
mov eax, dword [ebp - 0x330]
imul edx, esi
mov dword [ebp - 0x328], edx
mov dword [ebp - 0x32c], 0
mul ebx
mov edi, dword [ebp - 0x328]
mov esi, edx
add esi, edi
push esi
push eax
mov edx, dword [ebp - 0x308]
mov esi, dword [edx + 0x8c]
push esi
mov ebx, dword [edx + 0x58]
push ebx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004317e0
add esp, 0x20
test eax, eax
je 0x462b79
mov ebx, dword [ebp - 0x308]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x308], ebx
test ebx, ebx
jne 0x46561f
mov esi, dword [ebp + 0xc]
mov al, byte [esi]
and eax, 3
cmp al, 2
je 0x46587e
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax + 0xcc]
test ecx, ecx
je 0x46576e
add eax, 0xac
push edx
push edx
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.00499050
add esp, 0x10
test eax, eax
je 0x462b79
push esi
push esi
mov ebx, dword [ebp + 0xc]
push ebx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0049a720
add esp, 0x10
test eax, eax
je 0x462b79
mov edx, dword [ebp - 0x2e4]
mov eax, dword [ebp + 8]
call fcn.00458f80
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xa8]
mov edx, dword [ebp - 0x29c]
test edx, edx
mov eax, dword [eax + 0x9cc]
mov dword [eax + 0x40], 1
mov eax, 1
je 0x46222c
push eax
push eax
mov eax, dword [ebp - 0x294]
push eax
mov eax, dword [ebp - 0x298]
push eax
call fcn.0043f220
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x46222a
mov eax, dword [ebp - 0x294]
push eax
mov eax, dword [ebp - 0x298]
push eax
push ebx
mov edi, dword [ebp + 8]
push edi
call fcn.00496ab0
add esp, 0xc
mov esi, dword [ebp - 0x294]
push esi
mov ecx, dword [ebp - 0x298]
push ecx
push 0
push 0
push ebx
mov edx, dword [ebp - 0x29c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004317e0
add esp, 0x14
push ebx
call sub.msvcrt.dll_free
mov eax, 1
add esp, 0x10
jmp 0x46222c
push 0
mov eax, dword [ebx + 0xac]
mov edx, dword [eax + 0x1c]
push edx
mov eax, dword [eax + 0x18]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00469d90
add esp, 0x10
test eax, eax
jne 0x462b79
push eax
push eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x20]
mov eax, dword [eax + 0x68]
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00496fa0
add esp, 0x10
test eax, eax
jne 0x46571b
jmp 0x462b79
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push edi
push eax
push 0x447ef0
mov esi, dword [ebp + 8]
push esi
call fcn.00431920
mov ebx, dword [ebp - 0x14]
add esp, 0x10
test ebx, ebx
jne 0x462b79
jmp 0x465742
mov edx, dword [ebp + 0xc]
test byte [edx + 3], 0x40
je 0x465978
sub esp, 0xc
mov eax, dword [edx + 0x1c]
push str._P_X:_read_only_segment_has_dynamic_relocations._n
call dword [eax + 0x2c]
add esp, 0x10
jmp 0x465608
mov ebx, str.ELFCLASSNONE
sub esp, 0xc
push 3
call fcn.00430870
push esi
push ebx
mov esi, dword [ebp - 0x2bc]
push esi
push str._B:_file_class__s_incompatible_with__s
call dword [0x4ee9a0]
lea eax, [ebp - 0xc4]
add esp, 0x20
mov dword [ebp - 0x2e4], eax
jmp 0x462b79
mov ebx, str.ELFCLASS32
jmp 0x4658d3
push eax
push eax
mov esi, dword [ebp + 0xc]
mov edx, dword [esi + 0x1c]
push 0
push 0
push 0
push 0
mov edi, dword [ebp - 0x12c]
mov eax, dword [edi + 0x18]
mov edi, dword [eax + 4]
push edi
push esi
call dword [edx + 0x24]
add esp, 0x20
mov dword [ebp - 0x218], 0
jmp 0x4637a4
push edi
push edi
push 0x29fe
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_elflink.c
call fcn.0042fa10
mov edi, dword [ebp - 0x12c]
mov dword [ebp - 0x224], 0
add esp, 0x10
mov edx, dword [edi + 0x18]
jmp 0x463752
mov eax, dword [ecx + 0x18]
mov eax, dword [eax + 4]
mov edx, dword [eax]
jmp 0x462d15
mov ecx, dword [ebp + 0xc]
sub esp, 0xc
mov eax, dword [ecx + 0x1c]
push str._P:_warning:_creating_a_DT_TEXTREL_in_a_shared_object._n
call dword [eax + 0x2c]
add esp, 0x10
jmp 0x465608