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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x24c
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [edx + 0xa0]
mov ebx, dword [ebx + 4]
mov dword [ebp - 0x18c], ebx
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x194], eax
mov eax, dword [ebx + 0xa0]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x184], eax
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x1b4]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x1b4]
mov esi, dword [edx + 0x34]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x17c], esi
mov edi, dword [eax + 0x34]
mov dword [ebp - 0x174], edx
mov dword [ebp - 0x178], edi
cmp dword [eax + 0x40], edx
je 0x475508
push esi
push esi
push 0x5a1
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00423990
add esp, 0x10
mov edx, dword [ebp + 8]
sub esp, 0xc
mov ebx, dword [ebp + 0xc]
mov eax, dword [edx]
mov cl, byte [eax + 3]
mov byte [ebp - 0x1e8], cl
mov al, byte [eax + 4]
push ebx
mov byte [ebp - 0x1d8], al
call fcn.0047aba0
add esp, 0x10
test eax, eax
je 0x475854
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov eax, dword [ebx + 0xa0]
mov edi, dword [edi + 0x6c]
mov ecx, dword [ecx + 0x78]
mov edx, dword [edx + 0x74]
mov esi, dword [eax + 0x40]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 0x18c]
mov dword [ebp - 0x15c], ecx
mov eax, dword [eax + 0x70]
mov dword [ebp - 0x1c0], esi
mov dword [ebp - 0x16c], edi
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], edx
mov eax, dword [ebx + 0xa0]
mov ecx, dword [eax + 0x58]
test ecx, ecx
jne 0x47576a
mov esi, dword [ebp + 8]
mov edx, dword [esi]
mov al, byte [edx + 1]
and eax, 0x78
cmp al, 0x20
je 0x4755b4
mov al, byte [edx]
and eax, 3
cmp al, 2
je 0x475bc4
mov ebx, dword [ebp - 0x1bc]
mov esi, dword [ebp - 0x17c]
imul ebx, esi
shr byte [ebp - 0x1d8], 2
xor byte [ebp - 0x1e8], 1
mov dl, byte [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1c0]
xor edx, 0xffffffff
mov al, byte [ebp - 0x1e8]
and eax, 1
and edx, 1
mov dword [ebp - 0x1bc], ebx
add ebx, ecx
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x180], edx
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0x170], ebx
cmp ecx, ebx
jae 0x4762ed
mov dword [ebp - 0x21c], 2
mov cl, byte [ebp - 0x194]
mov esi, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x184]
shl dword [ebp - 0x21c], cl
add esi, esi
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x22c], eax
push esi
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0xe8]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x1b4]
push ebx
push ecx
push esi
call dword [eax + 4]
mov edi, dword [ebp - 0x22c]
cld
mov esi, dword [ebp - 0x16c]
mov ecx, 6
rep movsd dword es:[edi], dword [esi]
pop eax
pop edx
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x22c], ecx
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x1b4]
push ecx
push edx
call dword [eax + 0xa0]
add esp, 0x10
mov ebx, eax
cmp eax, 4
jbe switch.0x004756be
push eax
push str._bfd_coff_link_input_bfd
push 0x5db
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00424440
jmp dword [eax*4 + 0x4d51dc]
mov eax, dword [ebp - 0x168]
mov dword [eax], str.UND
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov al, byte [edx + 1]
and eax, 0x78
cmp al, 0x20
je 0x4756ed
mov al, byte [edx]
and eax, 3
cmp al, 2
je 0x475b73
xor ecx, ecx
mov byte [ebp - 0x10d], 1
mov edi, dword [ebp - 0x164]
mov esi, edx
mov dword [edi], 0xffffffff
mov al, byte [ebp - 0x47]
mov byte [ebp - 0x1b5], al
movzx edi, byte [edx + 1]
mov edx, edi
and edx, 0x18
cmp dl, 0x18
je 0x475860
cmp ebx, 4
jbe switch.0x00475b3d
push ebx
push str._bfd_coff_link_input_bfd
push 0x601
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00424440
mov edi, dword [ebp - 0x168]
mov dword [edi], str.COM
jmp 0x4756d1
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp - 0x50]
push eax
push eax
push edi
push esi
call fcn.00479570
mov esi, dword [ebp - 0x168]
add esp, 0x10
mov dword [esi], eax
jmp 0x4756d1
mov eax, dword [ebp + 0xc]
push edx
push edx
push str..drectve
push eax
call fcn.004202c0
add esp, 0x10
mov esi, eax
test eax, eax
je 0x475598
push eax
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp + 0xc]
push esi
push eax
call fcn.0041fcd0
add esp, 0x10
test eax, eax
jne 0x4761c0
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x475854
sub esp, 0xc
push eax
call fcn.004ae988
xor edx, edx
add esp, 0x10
jmp 0x475856
push ebx
mov ebx, dword [ebp - 0x18c]
mov esi, dword [ebp - 0x230]
mov ecx, dword [ebp - 0xdc]
mov eax, dword [ebx + 4]
mov edx, dword [eax + 0x1b4]
push ecx
xor eax, eax
mov al, byte [esi + 0x15]
push eax
xor eax, eax
push 0
mov al, byte [esi + 0x14]
push eax
mov ax, word [esi + 0x12]
and eax, 0xffff
push eax
mov eax, dword [ebp + 8]
add eax, 0x38
push eax
push ebx
call dword [edx + 0xc]
add esp, 0x20
mov edi, dword [ebp + 8]
mov ecx, dword [ebx + 0xa0]
push 0
mov eax, dword [ebp - 0x178]
mov edx, dword [edi + 0x34]
imul eax, edx
xor edx, edx
add eax, dword [ecx + 0x10]
adc edx, dword [ecx + 0x14]
push edx
push eax
push ebx
call fcn.00423710
add esp, 0x10
test eax, eax
jne 0x475854
mov edi, dword [ebp - 0x178]
mov esi, dword [ebp - 0xdc]
push eax
push ebx
push edi
push esi
call fcn.00423500
add esp, 0x10
cmp eax, dword [ebp - 0x178]
je 0x4767e9
xor edx, edx
lea esp, [ebp - 0xc]
mov eax, edx
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebp - 0x10d], 0
je 0x47571f
mov ebx, 1
mov dword [ebp - 0x154], 0
xor eax, eax
mov al, byte [ebp - 0x1b5]
inc eax
or ecx, ebx
mov dword [ebp - 0x150], eax
jne 0x475899
cmp byte [ebp - 0x48], 3
je 0x475a86
test ebx, ebx
jne 0x475ac4
cmp dl, 8
je 0x475fd6
cmp dl, 0x10
je 0x475fa0
and edi, 0x60
mov ebx, edi
cmp bl, 0x40
je 0x475fa0
test byte [esi + 4], 4
jne 0x4758e2
mov al, byte [ebp - 0x48]
cmp al, 0xf
je 0x475caa
cmp al, 0xa
je 0x475caa
cmp al, 0xc
je 0x475caa
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x475938
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x475938
lea edx, [ebp - 0x5c]
mov edi, dword [ebp + 0xc]
push eax
push 0
push edx
push edi
call fcn.0047ca30
add esp, 0x10
test eax, eax
je 0x475854
mov esi, dword [ebp - 0x1fc]
mov ebx, dword [ebp - 0x180]
mov ecx, dword [ebp + 8]
push esi
push ebx
push eax
mov ecx, dword [ecx + 0x10]
push ecx
call fcn.0042bc30
add esp, 0x10
cmp eax, 0xffffffff
je 0x475854
add eax, 4
mov dword [ebp - 0x58], eax
mov al, byte [ebp - 0x48]
cmp al, 0x12
jbe 0x475b89
cmp al, 0x66
je 0x4759b6
cmp al, 0x67
je 0x4760e6
cmp al, 0x65
je 0x476095
mov eax, dword [ebp - 0x50]
test eax, eax
jle 0x4759b6
mov edi, dword [ebp - 0x168]
mov edx, dword [ebp - 0x54]
mov ebx, dword [ebp + 0xc]
mov ecx, dword [edi]
mov eax, dword [ecx + 0x3c]
mov eax, dword [eax + 0x88]
mov dword [ebp - 0x50], eax
mov eax, dword [ecx + 0x38]
add edx, eax
mov dword [ebp - 0x54], edx
mov eax, dword [ebx + 0xa0]
mov eax, dword [eax + 0x58]
test eax, eax
jne 0x475995
mov eax, dword [ecx + 0x1c]
sub edx, eax
mov dword [ebp - 0x54], edx
mov esi, dword [ebp + 8]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax + 0x58]
test eax, eax
jne 0x4759b6
mov eax, dword [ecx + 0x3c]
mov edi, dword [ebp - 0x54]
mov eax, dword [eax + 0x1c]
add edi, eax
mov dword [ebp - 0x54], edi
mov edx, dword [ebp + 8]
mov eax, dword [edx]
cmp byte [eax + 4], 0
jns 0x4759ea
mov dl, byte [ebp - 0x48]
cmp dl, 2
je 0x47608c
cmp dl, 0x7f
je 0x47608c
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0xa0]
mov ebx, dword [eax + 0x58]
test ebx, ebx
jne 0x476083
mov ebx, dword [ebp - 0x18c]
push ecx
mov edx, dword [ebp - 0x15c]
lea esi, [ebp - 0x5c]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x1b4]
push edx
push esi
push ebx
call dword [eax + 0x10]
mov edi, dword [ebp - 0x164]
mov eax, dword [ebp - 0x160]
add esp, 0x10
mov dword [edi], eax
mov eax, dword [ebp - 0x154]
test eax, eax
je 0x475a57
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0xe8]
mov ecx, dword [edx + 0xa0]
xor edx, edx
mov edi, dword [ecx + 0x40]
sub eax, edi
div dword [ebp - 0x17c]
mov edx, dword [ecx + 0x5c]
mov eax, dword [edx + eax*4]
test eax, eax
je 0x4772d4
mov ecx, dword [ebp - 0x160]
mov dword [eax + 0x1c], ecx
mov edx, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x178]
mov eax, edx
mov esi, dword [ebp - 0x160]
imul eax, ebx
mov ecx, dword [ebp - 0x15c]
add esi, edx
add ecx, eax
mov dword [ebp - 0x160], esi
mov dword [ebp - 0x15c], ecx
jmp 0x475aca
cmp word [ebp - 0x4a], 0
jne 0x475899
cmp byte [ebp - 0x1b5], 0
je 0x475899
mov ecx, dword [ebp - 0x168]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
cmp eax, 0x4af990
je 0x475ac4
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x476e0c
cmp eax, dword [ecx + 0x10]
je 0x475899
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0xe8]
imul edx, eax
mov eax, dword [ebp - 0x150]
add edi, edx
mov dword [ebp - 0xe8], edi
mov edx, dword [ebp - 0x168]
mov edi, dword [ebp - 0x164]
dec eax
add edx, 4
add edi, 4
test eax, eax
jg 0x476046
mov ebx, dword [ebp - 0xe8]
cmp dword [ebp - 0x170], ebx
jbe 0x4762f9
mov ecx, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x16c]
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x164], edi
lea eax, [ecx + ecx*2]
lea ebx, [ebx + eax*8]
mov dword [ebp - 0x16c], ebx
jmp 0x47564d
jmp dword [ebx*4 + 0x4d51f0]
mov eax, dword [ebp - 0x198]
and ax, word [ebp - 0x4a]
and eax, 0xffff
cmp eax, dword [ebp - 0x21c]
je 0x476294
mov ebx, 1
mov dword [ebp - 0x154], 1
jmp 0x47587c
mov esi, dword [ebp - 0x164]
mov ecx, dword [esi]
test ecx, ecx
sete byte [ebp - 0x10d]
jmp 0x4756f6
cmp al, 8
jae 0x4759b6
cmp al, 1
je 0x4759b6
cmp al, 4
jne 0x475957
jmp 0x4759b6
mov eax, edi
and eax, 0x60
cmp al, 0x60
je 0x4762db
xor ebx, ebx
mov dword [ebp - 0x154], 0
jmp 0x47587c
mov edi, dword [ebp + 0xc]
cld
mov eax, dword [edi + 0xa0]
mov edi, dword [ebp - 0x164]
mov ecx, dword [eax + 0x1c]
xor eax, eax
shl ecx, 2
shr ecx, 2
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0xc]
test byte [eax + 0x29], 2
je 0x4755b4
mov ebx, dword [eax + 0x64]
test ebx, ebx
je 0x4755b4
test byte [ebx + 0x14], 4
je 0x475c9a
mov edi, dword [ebx + 0x4c]
test edi, edi
je 0x475c9a
test byte [ebx + 0x18], 2
je 0x475c9a
mov ecx, dword [ebx + 0x3c]
cmp ecx, 0x4af990
je 0x475c9a
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov al, byte [eax]
and eax, 3
mov byte [ebp - 0x10e], al
cmp al, 2
je 0x476df0
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x88]
cmp byte [ebp - 0x10e], 2
push eax
push eax
sete al
and eax, 0xff
push ecx
push eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov eax, dword [eax + 0x84]
push eax
push 0
push ebx
push edi
call fcn.0047c3e0
add esp, 0x20
mov edx, eax
test eax, eax
je 0x475c9a
mov eax, dword [ebx + 0x4c]
shl eax, 4
lea esi, [edx + eax]
cmp edx, esi
jae 0x475c9a
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x74]
mov eax, dword [edx + 4]
add edx, 0x10
cmp esi, edx
mov dword [ecx + eax*4], 0xffffffff
ja 0x475c89
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x475bf9
jmp 0x4755b4
cmp byte [ebp - 0x47], 1
jne 0x4758e2
push eax
lea eax, [ebp - 0x39]
push eax
lea esi, [ebp - 0x5c]
mov eax, dword [ebp + 0xc]
push esi
push eax
call fcn.0047ca30
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x475854
mov dl, byte [eax]
cmp dl, 0x7e
je 0x476d79
cmp dl, 0x2e
je 0x476d79
cmp dl, 0x24
je 0x476d79
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
cmp dl, byte [eax + 0x18]
je 0x476d66
mov eax, dword [ebp + 8]
push 1
add eax, 0x50
push 1
push ecx
push eax
call fcn.0042baf0
add esp, 0x10
mov dword [ebp - 0x1b4], eax
test eax, eax
je 0x475854
mov edi, dword [ebp + 0xc]
push eax
push eax
push 0x10
push edi
call fcn.00425f30
add esp, 0x10
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x475854
mov edx, dword [ebp - 0x1b0]
xor eax, eax
mov ecx, dword [ebp + 0xc]
mov al, byte [ebp - 0x48]
mov dword [edx + 4], eax
push esi
mov eax, dword [ecx + 4]
mov ebx, dword [ebp - 0x17c]
mov edx, dword [eax + 0x1b4]
lea eax, [ebp - 0x74]
push eax
xor eax, eax
mov al, byte [ebp - 0x47]
push eax
xor eax, eax
mov al, byte [ebp - 0x48]
push 0
push eax
mov ax, word [ebp - 0x4a]
and eax, 0xffff
push eax
mov eax, dword [ebp - 0xe8]
add eax, ebx
push eax
push ecx
call dword [edx]
mov eax, dword [ebp - 0xe8]
mov ebx, dword [ebp - 0x1b0]
mov esi, dword [ebp - 0x1ac]
add esi, eax
mov edi, dword [ebp + 0xc]
mov dword [ebx + 0xc], 0
mov dword [ebp - 0x148], esi
mov eax, dword [edi + 0xa0]
mov edx, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x68]
add esp, 0x20
imul edx, edi
mov ecx, dword [eax + 0x40]
add edx, ecx
mov dword [ebp - 0x144], edx
cmp esi, edx
jae 0x477637
mov edi, dword [ebp - 0x16c]
add ebx, 0xc
add edi, 0x30
mov dword [ebp - 0x14c], ebx
jmp 0x475e34
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax]
xor edx, edx
mov dword [ecx], 0
mov dl, byte [edi + 0x15]
mov esi, dword [ebp - 0x17c]
mov ebx, dword [ebp - 0x148]
lea eax, [edx + 1]
imul eax, esi
add ebx, eax
mov dword [ebp - 0x148], ebx
mov esi, dword [ebp - 0x148]
cmp dword [ebp - 0x144], esi
jbe 0x47720f
lea eax, [edx + edx*2]
mov dword [ebp - 0x14c], ecx
lea edi, [edi + eax*8 + 0x18]
push ebx
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x1b4]
push edi
push ecx
push ebx
call dword [eax + 4]
pop eax
pop edx
push 0x10
push ebx
call fcn.00425f30
mov esi, dword [ebp - 0x14c]
add esp, 0x10
mov dword [esi], eax
test eax, eax
je 0x475854
lea eax, [ebp - 0x42]
push esi
push eax
push edi
push ebx
call fcn.0047ca30
add esp, 0x10
mov esi, eax
test eax, eax
je 0x475854
sub esp, 0xc
push eax
call sub.msvcrt.dll_strlen
pop edx
inc eax
pop ecx
push eax
push ebx
call fcn.00425f30
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x475854
push eax
push eax
push esi
push ebx
call sub.msvcrt.dll_strcpy
mov edx, dword [ebp - 0x14c]
mov eax, dword [edx]
mov dx, word [edi + 0x12]
mov esi, edx
add esp, 0x10
and esi, 0xffff
mov dword [eax + 4], ebx
mov dword [eax + 8], esi
mov dword [eax + 0xc], 0
mov bl, byte [edi + 0x15]
mov ecx, eax
test bl, bl
je 0x475df0
test dx, dx
je 0x475df0
mov cl, byte [edi + 0x14]
mov byte [ebp - 0x1a5], cl
mov ecx, eax
cmp byte [ebp - 0x1a5], 0x66
je 0x475df0
mov edx, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x8c]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x1b4]
xor eax, eax
mov al, bl
push ecx
push eax
xor eax, eax
mov al, byte [ebp - 0x1a5]
push 0
mov ecx, dword [ebp - 0x17c]
push eax
mov eax, dword [ebp - 0x148]
push esi
add eax, ecx
mov esi, dword [ebp + 0xc]
push eax
push esi
call dword [edx]
mov ecx, dword [ebp - 0x8c]
add esp, 0x20
test ecx, ecx
jle 0x477202
mov esi, dword [ebp + 0xc]
mov edx, dword [ebp - 0xe8]
mov eax, dword [esi + 0xa0]
mov ebx, dword [eax + 0x40]
sub edx, ebx
mov eax, edx
sar edx, 0x1f
idiv dword [ebp - 0x17c]
cmp ecx, eax
jge 0x475de8
mov edx, dword [ebp - 0x14c]
mov ebx, dword [ebp + 8]
mov eax, dword [edx]
mov edx, dword [ebx + 0x74]
mov edx, dword [edx + ecx*4]
mov ecx, eax
mov dword [eax + 0xc], edx
test edx, edx
jns 0x475df0
mov dword [eax + 0xc], 0
jmp 0x475df0
lea eax, [ebp - 0x39]
mov edx, dword [ebp + 0xc]
lea esi, [ebp - 0x5c]
push ecx
push eax
push esi
push edx
call fcn.0047ca30
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x475854
cmp byte [ebp - 0x10d], 0
jne 0x476169
mov edi, dword [ebp + 8]
mov esi, dword [edi]
jmp 0x4758c1
cmp byte [ebp - 0x10d], 0
je 0x4758b3
mov eax, dword [ebp - 0x50]
cmp eax, 0xfffffffe
je 0x475ac4
inc eax
jne 0x4758b3
mov al, byte [ebp - 0x48]
cmp al, 1
je 0x475ac4
cmp al, 4
je 0x475ac4
cmp al, 8
je 0x475ac4
cmp al, 0x10
je 0x475ac4
cmp al, 0xb
je 0x475ac4
cmp al, 9
je 0x475ac4
cmp al, 0x11
je 0x475ac4
cmp al, 0x12
je 0x475ac4
cmp al, 0x66
jne 0x4758b3
jmp 0x475ac4
xor ecx, ecx
mov ebx, dword [ebp - 0x168]
mov esi, dword [ebp - 0x164]
mov dword [ebx + ecx*4 + 4], 0
mov dword [esi + ecx*4 + 4], 0xffffffff
inc ecx
cmp ecx, eax
jne 0x476048
mov ecx, dword [ebp - 0x150]
lea eax, [ecx*4 - 8]
lea edi, [edi + eax + 4]
lea edx, [edx + eax + 4]
jmp 0x475b02
cmp dl, 0x69
jne 0x4759ea
mov byte [ebp - 0x48], 3
jmp 0x4759ea
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0xa0]
mov edx, dword [eax + 0x58]
test edx, edx
je 0x475957
cld
mov edi, 0x4d5145
mov ecx, 4
mov esi, dword [ebp - 0x22c]
repe cmpsb byte [esi], byte es:[edi]
je 0x475957
mov eax, dword [ebp - 0x50]
test eax, eax
jle 0x4759b6
mov esi, dword [ebp - 0x168]
mov eax, dword [esi]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x88]
mov dword [ebp - 0x50], eax
jmp 0x4759b6
mov edi, dword [ebp + 8]
cmp dword [edi + 0x18], 0xffffffff
je 0x4769a8
mov eax, dword [ebp - 0x160]
cmp dword [edi + 0x24], eax
je 0x4762a5
mov edx, dword [edi + 0x18]
mov dword [edi + 0x24], eax
cmp dword [ebp - 0x184], edx
ja 0x4769df
mov ebx, dword [ebp - 0x184]
push esi
sub edx, ebx
mov esi, dword [ebp - 0x178]
imul edx, esi
mov ecx, dword [ebp - 0x18c]
mov ebx, dword [edi + 0x78]
add edx, ebx
mov ebx, edi
mov eax, dword [ecx + 4]
add ebx, 0x1c
mov eax, dword [eax + 0x1b4]
push edx
push ebx
push ecx
call dword [eax + 0x10]
add esp, 0x10
mov ecx, dword [ebp + 8]
mov esi, dword [ebp - 0x160]
cld
mov dword [ecx + 0x18], esi
mov edi, ebx
mov ecx, 6
mov esi, dword [ebp - 0x22c]
rep movsd dword es:[edi], dword [esi]
jmp 0x4759b6
mov eax, dword [ebp + 8]
mov esi, dword [eax]
mov al, byte [esi + 1]
and eax, 0x18
cmp al, 0x10
je 0x476d83
mov eax, dword [ebp - 0x154]
test eax, eax
jne 0x4758c1
mov al, byte [esi + 1]
and eax, 0x60
cmp al, 0x40
jne 0x4758c1
mov ecx, dword [ebp + 0xc]
push eax
push eax
mov eax, dword [ecx + 4]
push ebx
push ecx
call dword [eax + 0x11c]
add esp, 0x10
test eax, eax
jne 0x475ac4
mov ebx, dword [ebp + 8]
mov esi, dword [ebx]
jmp 0x4758c1
mov ebx, dword [ebp - 0x20]
mov esi, dword [esi + 0x24]
add esi, ebx
mov dword [ebp - 0x114], esi
cmp ebx, esi
jae 0x4761e0
cmp byte [ebx], 0x2d
je 0x4761f4
inc ebx
cmp dword [ebp - 0x114], ebx
ja 0x4761d2
sub esp, 0xc
mov eax, dword [ebp - 0x20]
push eax
call fcn.004ae988
add esp, 0x10
jmp 0x475598
cld
mov edi, str._attr
mov ecx, 5
mov esi, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x476265
lea eax, [ebx + 5]
lea edx, [ebp - 0x24]
call fcn.00474810
lea edx, [ebp - 0x28]
call fcn.00474810
xor edi, edi
mov ebx, eax
xor esi, esi
mov eax, dword [ebp - 0x28]
mov dl, byte [eax]
inc eax
mov dword [ebp - 0x28], eax
cmp dl, 0x52
jge 0x4762b0
push eax
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.004202c0
add esp, 0x10
test eax, eax
je 0x4761d8
test edi, edi
je 0x476253
mov ecx, dword [eax + 0x14]
or ecx, 0x10
mov dword [eax + 0x14], ecx
test esi, esi
jne 0x4761d8
mov edx, dword [eax + 0x14]
or edx, 8
mov dword [eax + 0x14], edx
jmp 0x4761d8
cld
mov edi, str._heap
mov ecx, 5
mov esi, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4769b3
lea eax, [ebx + 5]
mov ecx, 1
mov edx, dword [ebp - 0x18c]
call fcn.004753e0
mov ebx, eax
jmp 0x4761d8
xor ebx, ebx
mov dword [ebp - 0x154], 1
jmp 0x47587c
mov edx, dword [ebp + 8]
lea ebx, [edx + 0x1c]
jmp 0x476148
cmp dl, 0x53
jle 0x476221
cmp dl, 0x57
je 0x4762d1
cmp dl, 0x58
jne 0x476230
mov edi, 1
jmp 0x476221
mov esi, 1
jmp 0x476221
cmp byte [ebp - 0x10d], 0
jne 0x47586d
jmp 0x475bb3
mov ebx, dword [ebp - 0x184]
mov dword [ebp - 0x160], ebx
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp - 0x17c]
mov ebx, dword [ebp + 8]
mov edx, dword [esi + 0xa0]
mov ebx, dword [ebx + 0x78]
mov ecx, dword [edx + 0x1c]
mov edi, dword [edx + 0x40]
imul eax, ecx
add eax, edi
mov ecx, dword [ebp + 8]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ecx + 0x74]
mov edx, dword [edx + 0x5c]
mov eax, dword [eax + 0x6c]
mov esi, dword [ebp - 0xf0]
mov dword [ebp - 0xec], edi
mov dword [ebp - 0x230], eax
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0x158], edx
mov dword [ebp - 0xdc], ebx
cmp edi, esi
jae 0x476a85
mov dword [ebp - 0x218], 2
mov cl, byte [ebp - 0x194]
shl dword [ebp - 0x218], cl
mov dword [ebp - 0x188], 0
mov ebx, dword [ebp - 0x230]
xor ecx, ecx
mov edi, dword [ebp - 0xf4]
mov dl, byte [ebx + 0x15]
mov cl, dl
mov eax, dword [edi]
test eax, eax
lea esi, [ecx + 1]
mov dword [ebp - 0x140], esi
js 0x476835
cmp dword [ebp - 0x184], eax
ja 0x476835
mov eax, dword [ebp - 0x17c]
mov edx, dword [ebp - 0xec]
add edx, eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xec], edx
mov edx, dword [ebp - 0x178]
add eax, edx
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0xdc], eax
test ecx, ecx
jle 0x476870
mov ebx, dword [ebp - 0xec]
cmp dword [ebp - 0xf0], ebx
jbe 0x476870
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x138], 0
add ebx, eax
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x108], ebx
jmp 0x47655a
mov edi, dword [ebp - 0x104]
mov ebx, dword [ebp - 0x230]
add edx, edi
mov dword [ebp - 0x134], edx
mov dl, byte [ebx + 0x14]
cmp dl, 0x67
je 0x4765d8
cmp dl, 3
je 0x476810
cmp dl, 0x69
je 0x476660
mov ebx, dword [ebp - 0x230]
mov ax, word [ebx + 0x12]
and eax, 0xffff
mov edi, dword [ebp - 0x198]
and eax, edi
cmp eax, dword [ebp - 0x218]
je 0x4766d1
cmp dl, 0xa
je 0x4766d1
cmp dl, 0xc
je 0x4766d1
cmp dl, 0xf
je 0x4766d1
cmp dl, 0x64
je 0x4766d1
cmp dl, 0x65
je 0x4766d1
mov ecx, dword [ebp - 0x134]
mov edx, dword [ecx]
test edx, edx
je 0x4764d5
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0xa0]
cmp edx, dword [eax + 0x1c]
jae 0x4764d5
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x74]
mov eax, dword [eax + edx*4]
test eax, eax
js 0x4768c4
mov edi, dword [ebp - 0x134]
mov dword [edi], eax
mov ebx, dword [ebp - 0x138]
test ebx, ebx
jne 0x476660
mov ecx, dword [ebp - 0x13c]
test ecx, ecx
je 0x47673e
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0xec]
mov esi, dword [ebp - 0x138]
add edi, eax
inc esi
mov edx, dword [ebp - 0x230]
mov dword [ebp - 0x138], esi
xor ecx, ecx
mov dword [ebp - 0xec], edi
mov ebx, dword [ebp - 0x108]
mov cl, byte [edx + 0x15]
mov esi, dword [ebp - 0x17c]
cmp ecx, dword [ebp - 0x138]
setg dl
cmp dword [ebp - 0xf0], ebx
seta al
add ebx, esi
mov dword [ebp - 0x108], ebx
mov ebx, dword [ebp - 0x104]
add ebx, 0x18
test dl, al
mov dword [ebp - 0x104], ebx
je 0x476870
mov eax, dword [ebp - 0x13c]
test eax, eax
je 0x476581
mov esi, dword [ebp - 0x13c]
mov edx, dword [esi + 0x28]
test edx, edx
je 0x476581
movsx eax, byte [esi + 0x23]
cmp dword [ebp - 0x138], eax
jl 0x476420
mov edi, dword [ebp + 0xc]
push esi
lea esi, [ebp - 0xa4]
mov ebx, dword [ebp - 0x138]
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x1b4]
push esi
push ecx
mov ecx, dword [ebp - 0x230]
push ebx
xor eax, eax
mov al, byte [ecx + 0x14]
push eax
mov ax, word [ecx + 0x12]
mov ecx, dword [ebp - 0xec]
and eax, 0xffff
push eax
push ecx
push edi
call dword [edx]
mov ebx, dword [ebp - 0x230]
mov dword [ebp - 0x134], esi
add esp, 0x20
mov dl, byte [ebx + 0x14]
cmp dl, 0x67
jne 0x476440
mov esi, dword [ebp - 0x134]
mov edx, dword [esi]
test edx, edx
jne 0x476660
mov eax, dword [esi + 4]
test eax, eax
je 0x476660
cmp eax, 3
jle 0x4768cf
mov eax, dword [ebp - 0x188]
test eax, eax
je 0x476927
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x134]
mov eax, dword [ecx + 0xa0]
mov edx, dword [edi + 4]
mov ecx, 0x4d5149
cmp edx, dword [eax + 0x4c]
jae 0x476627
mov ebx, dword [ebp - 0x188]
lea ecx, [edx + ebx]
mov eax, dword [ebp - 0x1fc]
mov esi, dword [ebp + 8]
push eax
mov eax, dword [ebp - 0x180]
push eax
push ecx
mov eax, dword [esi + 0x10]
push eax
call fcn.0042bc30
add esp, 0x10
cmp eax, 0xffffffff
je 0x475854
mov edi, dword [ebp - 0x134]
add eax, 4
mov dword [edi + 4], eax
lea esi, [esi]
mov eax, dword [ebp - 0x13c]
test eax, eax
jne 0x4764f1
nop
mov ebx, dword [ebp - 0x18c]
push eax
mov esi, dword [ebp - 0x230]
mov eax, dword [ebx + 4]
mov edx, dword [eax + 0x1b4]
mov eax, dword [ebp - 0xdc]
push eax
xor eax, eax
mov al, byte [esi + 0x15]
push eax
mov eax, dword [ebp - 0x138]
push eax
xor eax, eax
mov al, byte [esi + 0x14]
push eax
mov ax, word [esi + 0x12]
and eax, 0xffff
push eax
mov eax, dword [ebp - 0x134]
push eax
push ebx
call dword [edx + 0xc]
mov eax, dword [ebp - 0xdc]
mov edi, dword [ebp - 0x178]
add esp, 0x20
add eax, edi
mov dword [ebp - 0xdc], eax
jmp 0x4764f1
mov esi, dword [ebp - 0x134]
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4764a2
mov edi, dword [ebp + 0xc]
mov ecx, eax
mov eax, dword [edi + 0xa0]
mov ebx, dword [eax + 0x1c]
cmp ecx, ebx
jae 0x4764a2
mov eax, dword [ebp + 8]
lea edx, [ecx*4]
mov esi, dword [eax + 0x74]
add edx, esi
jmp 0x476711
inc ecx
mov eax, dword [edx]
test eax, eax
js 0x476723
cmp dword [ebp - 0x184], eax
jbe 0x476828
add edx, 4
cmp ecx, ebx
jne 0x476710
mov eax, dword [ebp - 0x160]
mov edx, dword [ebp - 0x134]
mov dword [edx + 0xc], eax
jmp 0x4764a2
mov eax, dword [ebp - 0x230]
cmp byte [eax + 0x14], 0x65
jne 0x476670
mov edx, dword [eax]
test edx, edx
jne 0x47675f
mov eax, dword [eax + 4]
test eax, eax
jne 0x476670
mov edx, dword [ebp - 0x230]
cmp dword [edx], 0x66622e
jne 0x476670
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x34], 0xffffffff
je 0x4767e9
mov ebx, dword [ebp - 0xf4]
mov esi, dword [ebp + 8]
mov eax, dword [ebx]
mov dword [ecx + 0x44], eax
mov ecx, dword [esi + 0x34]
cmp dword [ebp - 0x184], ecx
ja 0x4757bf
mov edi, dword [ebp - 0x18c]
push eax
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x1b4]
mov eax, dword [ebp - 0x184]
sub ecx, eax
mov eax, dword [ebp - 0x178]
imul ecx, eax
mov eax, dword [esi + 0x78]
add ecx, eax
xor eax, eax
push ecx
mov ecx, dword [ebp - 0x230]
mov al, byte [ecx + 0x15]
push eax
xor eax, eax
push 0
mov al, byte [ecx + 0x14]
push eax
mov ax, word [ecx + 0x12]
and eax, 0xffff
push eax
mov eax, esi
add eax, 0x38
push eax
push edi
call dword [edx + 0xc]
add esp, 0x20
mov eax, dword [ebp - 0x134]
mov ebx, dword [eax + 0xc]
test ebx, ebx
je 0x4768e8
mov edx, dword [ebp + 8]
mov dword [edx + 0x34], 0xffffffff
jmp 0x476670
mov ecx, dword [ebp - 0x230]
mov ax, word [ecx + 0x12]
test ax, ax
jne 0x47645c
jmp 0x476660
cmp ecx, ebx
jb 0x476730
jmp 0x47672a
mov ebx, dword [ebp - 0x158]
mov ebx, dword [ebx]
mov dword [ebp - 0x13c], ebx
test ebx, ebx
je 0x476853
mov esi, dword [ebp + 0xc]
cmp dword [ebx + 0x24], esi
je 0x476950
mov eax, dword [ebp - 0x140]
mov esi, dword [ebp - 0x17c]
imul eax, esi
mov ebx, dword [ebp - 0xec]
add ebx, eax
mov dword [ebp - 0xec], ebx
mov edi, dword [ebp - 0xf0]
cmp dword [ebp - 0xec], edi
jae 0x476a85
mov edx, dword [ebp - 0x140]
mov eax, dword [ebp - 0xf4]
shl edx, 2
mov ecx, dword [ebp - 0x140]
add eax, edx
mov ebx, dword [ebp - 0x230]
mov dword [ebp - 0xf4], eax
lea eax, [ecx + ecx*2]
lea ebx, [ebx + eax*8]
mov eax, dword [ebp - 0x158]
add eax, edx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x158], eax
jmp 0x47637a
mov dword [ecx], 0
jmp 0x4764d5
push eax
push eax
push 0x7ee
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00423990
add esp, 0x10
jmp 0x4765f4
mov eax, dword [ebp + 8]
mov ecx, 6
add eax, 0x38
mov esi, dword [ebp - 0x134]
cld
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xdc]
mov ecx, dword [edx + 0x78]
xor edx, edx
sub eax, ecx
mov ecx, dword [ebp + 8]
div dword [ebp - 0x178]
mov edx, dword [ebp - 0x184]
add eax, edx
mov dword [ecx + 0x34], eax
jmp 0x476670
sub esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
call fcn.0047ac50
add esp, 0x10
mov dword [ebp - 0x188], eax
test eax, eax
jne 0x476602
jmp 0x475854
test eax, eax
jns 0x4763ac
test dl, dl
je 0x476984
mov edi, dword [ebp - 0x13c]
mov al, byte [edi + 0x23]
test al, al
je 0x476984
movsx eax, al
cmp ecx, eax
je 0x476984
push ecx
push ecx
push 0x7cb
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00423990
add esp, 0x10
mov eax, dword [ebp - 0xec]
mov edi, dword [ebp - 0x17c]
add eax, edi
xor ecx, ecx
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x230]
mov cl, byte [eax + 0x15]
jmp 0x4763de
mov eax, dword [ebp + 8]
lea ebx, [eax + 0x1c]
jmp 0x476148
cld
mov edi, str._stack
mov ecx, 6
mov esi, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x476a68
lea eax, [ebx + 6]
xor ecx, ecx
mov edx, dword [ebp - 0x18c]
call fcn.004753e0
mov ebx, eax
jmp 0x4761d8
mov ebx, dword [ebp - 0x18c]
push esi
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebx + 4]
mov ebx, dword [ebp - 0x15c]
mov eax, dword [eax + 0x1b4]
push ebx
mov ebx, dword [ebp + 8]
add ebx, 0x1c
push ebx
push ecx
call dword [eax + 0x10]
mov esi, dword [ebp - 0x18c]
mov edi, dword [ebp + 8]
mov ecx, dword [esi + 0xa0]
push 0
mov eax, dword [ebp - 0x178]
mov edx, dword [edi + 0x18]
imul eax, edx
xor edx, edx
add eax, dword [ecx + 0x10]
adc edx, dword [ecx + 0x14]
push edx
push eax
push esi
call fcn.00423710
add esp, 0x20
test eax, eax
jne 0x475854
mov edi, dword [ebp - 0x178]
push eax
push esi
mov esi, dword [ebp - 0x15c]
push edi
push esi
call fcn.00423500
add esp, 0x10
cmp eax, dword [ebp - 0x178]
je 0x476148
jmp 0x475854
cld
mov edi, str._aligncomm:
mov ecx, 0xb
mov esi, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4761d7
add ebx, 0xb
jmp 0x4761d8
mov esi, dword [ebp + 8]
mov eax, dword [esi]
mov dl, byte [eax + 1]
and edx, 0x18
je 0x476e20
cmp dl, 0x10
je 0x476e20
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x18]
cmp ecx, 0xffffffff
je 0x476ab6
cmp dword [ebp - 0x184], ecx
jbe 0x4775a6
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x78]
cmp dword [ebp - 0xdc], ebx
ja 0x4772f8
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 0x64]
test esi, esi
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0xb4]
mov dword [ebp - 0x190], eax
je 0x476cbc
test byte [esi + 0x18], 2
je 0x476cb1
mov eax, dword [esi + 0x14]
test eax, 0x100000
jne 0x476cb1
test ah, 1
je 0x476cf0
mov edx, dword [esi + 0x24]
test edx, edx
jne 0x476b1b
test al, 4
je 0x476cb1
mov edi, dword [esi + 0x8c]
mov dword [ebp - 0x124], edi
test edi, edi
je 0x4771d7
mov eax, dword [edi + 8]
test eax, eax
je 0x4771d7
mov dword [ebp - 0x20], eax
test byte [esi + 0x14], 4
je 0x476c5d
mov edx, dword [esi + 0x3c]
mov ebx, dword [ebp + 8]
mov ecx, dword [edx + 0x88]
mov eax, dword [ebx]
mov dword [ebp - 0x120], ecx
mov cl, byte [eax]
and ecx, 3
cmp cl, 2
je 0x4773b0
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x88]
cmp cl, 2
push edi
sete al
push edi
and eax, 0xff
push edx
mov edx, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 0xc]
mov ebx, dword [edx + 0x84]
push ebx
push 0
push esi
push ecx
call fcn.0047c3e0
add esp, 0x20
mov dword [ebp - 0x11c], eax
test eax, eax
je 0x4772e8
mov edi, dword [esi + 0x4c]
mov edx, dword [ebp - 0x11c]
mov eax, edi
mov ebx, dword [ebp - 0x11c]
shl eax, 4
add eax, edx
cmp eax, ebx
jbe 0x476c0c
mov edx, dword [ebx + 4]
test edx, edx
js 0x476bf8
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0xa0]
mov eax, dword [eax + 0x5c]
mov ecx, dword [eax + edx*4]
test ecx, ecx
jne 0x476be3
jmp 0x476bf8
mov ecx, dword [ecx + 0x14]
mov dl, byte [ecx + 0xc]
lea eax, [edx - 6]
cmp al, 1
jbe 0x476be0
lea eax, [edx - 3]
cmp al, 1
jbe 0x476d22
mov eax, edi
mov edx, dword [ebp - 0x11c]
shl eax, 4
add ebx, 0x10
add eax, edx
cmp eax, ebx
ja 0x476bc2
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov eax, dword [edx + 4]
mov edi, dword [ecx + 0x70]
mov eax, dword [eax + 0x1b4]
push edi
mov ebx, dword [ecx + 0x6c]
mov edi, dword [ebp - 0x11c]
push ebx
mov ebx, dword [ebp - 0x20]
push edi
push ebx
push esi
push edx
mov edi, dword [ecx]
mov ebx, dword [ebp - 0x18c]
push edi
push ebx
call dword [eax + 0xac]
add esp, 0x20
test eax, eax
je 0x475854
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
mov al, byte [eax]
and eax, 3
cmp al, 2
je 0x4773c9
mov eax, dword [ebp - 0x124]
test eax, eax
je 0x476da6
mov ecx, dword [ebp - 0x124]
mov eax, dword [ecx + 0x24]
test eax, eax
je 0x476da6
sub esp, 0xc
mov eax, dword [ebp - 0x20]
mov ebx, dword [ebp + 8]
push eax
mov eax, dword [ebp - 0x124]
add eax, 0x24
push eax
push esi
mov eax, dword [ebx]
mov eax, dword [eax + 0x1c]
add eax, 0x2c
push eax
mov eax, dword [ebp - 0x18c]
push eax
call fcn.0048b2f0
add esp, 0x20
test eax, eax
je 0x475854
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x476aeb
mov esi, dword [ebp + 8]
mov edx, 1
mov eax, dword [esi]
test byte [eax + 3], 1
jne 0x475856
sub esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
call fcn.004797a0
add esp, 0x10
test eax, eax
setne al
xor edx, edx
mov dl, al
jmp 0x475856
test al, 4
je 0x476cb1
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x476cb1
push eax
mov eax, dword [ebp + 0xc]
push esi
push eax
push str._B:_relocs_in_section___A__but_it_has_no_contents
call dword [0x4afb04]
mov dword [esp], 0xe
call fcn.00424660
xor edx, edx
add esp, 0x10
jmp 0x475856
mov edx, dword [ecx + 0x14]
test edx, edx
je 0x476bf8
cmp word [edx + 0x14], 0
jns 0x476bf8
mov edi, dword [ebp + 8]
push eax
push eax
mov eax, dword [edi]
mov edi, dword [edx + 0x94]
mov eax, dword [eax + 0x18]
push edi
mov edi, dword [ebp + 0xc]
push edx
push edi
push esi
mov ecx, dword [ecx + 4]
push ecx
push str._X__s_referenced_in_section___A_of__B:_defined_in_discarded_section___A_of__B_n
call dword [eax + 0x2c]
add esp, 0x20
mov edi, dword [esi + 0x4c]
jmp 0x476bf8
mov al, byte [ecx + 1]
cmp al, 0x7e
je 0x476d79
cmp al, 0x2e
je 0x476d79
cmp al, 0x24
jne 0x475cff
mov ecx, 0x4d5144
jmp 0x475cff
push 0
push 0
push ebx
mov eax, dword [esi + 0x20]
push eax
call fcn.0042baf0
add esp, 0x10
test eax, eax
je 0x475ac4
mov edx, dword [ebp + 8]
mov esi, dword [edx]
jmp 0x47617c
sub esp, 0xc
mov edi, dword [ebp - 0x18c]
mov ebx, dword [esi + 0x38]
push edi
call fcn.00424f40
imul eax, ebx
mov edi, dword [esi + 0x24]
pop edx
mov ebx, dword [ebp - 0x20]
pop ecx
xor edx, edx
push edi
push edx
push eax
push ebx
mov edx, dword [ebp - 0x18c]
mov ecx, dword [esi + 0x3c]
push ecx
push edx
call fcn.0041fec0
add esp, 0x20
test eax, eax
jne 0x476cb1
jmp 0x475854
mov esi, dword [ebp + 8]
mov edx, dword [ecx + 0x88]
mov ecx, dword [ecx + 0x4c]
shl ecx, 4
mov eax, dword [esi + 0x14]
mov esi, dword [eax + edx*8]
add ecx, esi
jmp 0x475c44
mov ecx, dword [ebp - 0x18c]
cmp eax, dword [ecx + 0x68]
jne 0x475ac4
jmp 0x475899
mov ecx, dword [ebp + 0xc]
mov edi, dword [ecx + 0x64]
test edi, edi
je 0x476a9f
mov dword [ebp - 0x214], 2
mov cl, byte [ebp - 0x194]
shl dword [ebp - 0x214], cl
jmp 0x476e51
mov edi, dword [edi + 0xc]
test edi, edi
je 0x476a9f
mov eax, dword [edi + 0x74]
test eax, eax
je 0x476e46
mov eax, dword [edi + 0x3c]
test byte [eax + 0x15], 1
je 0x476e46
push 0
mov esi, dword [ebp + 0xc]
mov eax, dword [edi + 0x64]
push eax
mov eax, dword [edi + 0x60]
push eax
push esi
call fcn.00423710
add esp, 0x10
test eax, eax
jne 0x475854
mov ecx, dword [ebp + 0xc]
push ebx
push ecx
mov eax, dword [ebp - 0x174]
mov edx, dword [edi + 0x74]
mov ebx, dword [ebp + 8]
imul eax, edx
push eax
mov esi, dword [ebx + 0x7c]
push esi
call fcn.004230d0
mov ebx, dword [edi + 0x74]
mov edx, eax
mov eax, dword [ebp - 0x174]
add esp, 0x10
imul eax, ebx
cmp edx, eax
jne 0x475854
mov ecx, dword [edi + 0x3c]
mov ebx, dword [edi + 0x1c]
mov dword [ebp - 0x19c], ebx
mov eax, dword [edi + 0x38]
mov esi, dword [ecx + 0x1c]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1a4], esi
mov esi, dword [ebp + 8]
mov ebx, dword [esi + 0x7c]
add edx, ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x12c], ebx
cmp ebx, edx
jae 0x477164
mov eax, dword [ebp - 0x174]
add eax, ebx
xor ebx, ebx
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x100], eax
jmp 0x476f82
mov eax, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x1a4]
add eax, edx
mov esi, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x30]
sub eax, esi
add ecx, eax
mov dword [ebp - 0x30], ecx
test ebx, ebx
je 0x477120
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x100]
add ecx, eax
mov edx, dword [ebp - 0x174]
mov dword [ebp - 0x100], ecx
mov esi, dword [ebp - 0x208]
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0xe0], esi
sub eax, edx
cmp eax, dword [ebp - 0x130]
jae 0x47715b
mov ecx, dword [ebp - 0x208]
mov edx, dword [ebp - 0x174]
add edx, ecx
mov dword [ebp - 0x208], edx
mov esi, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x30]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x1b4]
push edx
mov edx, dword [ebp - 0xe0]
push edx
push esi
call dword [eax + 8]
mov ecx, dword [ebp - 0x2c]
add esp, 0x10
test ecx, ecx
jne 0x476f0e
mov edx, dword [ebp - 0x30]
test edx, edx
js 0x476f2c
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0xa0]
cmp edx, dword [eax + 0x1c]
jae 0x476f2c
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x74]
mov ebx, 1
mov edx, dword [eax + edx*4]
mov dword [ebp - 0x128], edx
test edx, edx
js 0x477046
mov esi, dword [ebp - 0x18c]
push eax
mov ebx, edx
mov edx, dword [ebp - 0x184]
mov eax, dword [esi + 4]
sub ebx, edx
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x1b4]
lea eax, [ebp - 0xbc]
push eax
mov eax, dword [ebp - 0x178]
imul eax, ebx
add eax, dword [ecx + 0x78]
push eax
push esi
call dword [edx + 4]
mov ax, word [ebp - 0xaa]
and eax, 0xffff
mov edx, dword [ebp - 0x198]
mov dword [ebp - 0x200], eax
and eax, edx
add esp, 0x10
cmp eax, dword [ebp - 0x214]
je 0x477054
cmp byte [ebp - 0xa8], 0x64
je 0x477054
xor ebx, ebx
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x30], ecx
jmp 0x476f2c
mov cl, byte [ebp - 0xa7]
test cl, cl
je 0x477044
mov eax, dword [ebp - 0x178]
inc ebx
imul ebx, eax
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x18c]
mov eax, dword [esi + 0x78]
lea esi, [ebp - 0xd4]
add ebx, eax
push eax
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x1b4]
xor eax, eax
mov al, cl
push esi
push eax
xor eax, eax
mov al, byte [ebp - 0xa8]
push 0
push eax
mov eax, dword [ebp - 0x200]
push eax
mov eax, dword [ebp - 0x18c]
push ebx
push eax
call dword [edx]
mov edx, dword [edi + 0x3c]
mov eax, dword [ebp - 0x174]
mov ecx, dword [edx + 0x74]
imul eax, ecx
mov ecx, dword [edx + 0x60]
add esp, 0x1c
add eax, ecx
mov ecx, dword [ebp - 0xe0]
add eax, ecx
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x7c]
sub eax, edx
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0xcc], eax
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x1b4]
xor eax, eax
mov al, byte [ebp - 0xa7]
push ebx
push eax
xor eax, eax
mov al, byte [ebp - 0xa8]
push 0
push eax
mov ax, word [ebp - 0xaa]
mov ebx, dword [ebp - 0x18c]
and eax, 0xffff
push eax
push esi
push ebx
call dword [edx + 0xc]
xor ebx, ebx
add esp, 0x20
jmp 0x477046
mov esi, dword [ebp - 0x18c]
push ecx
mov edx, dword [ebp - 0x12c]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x1b4]
push edx
lea edx, [ebp - 0x30]
push edx
push esi
call dword [eax + 0x14]
mov esi, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x174]
add esp, 0x10
add esi, ecx
mov dword [ebp - 0x12c], esi
jmp 0x476f34
mov edx, dword [ebp + 8]
mov ecx, dword [edi + 0x3c]
mov ebx, dword [edx + 0x7c]
push 0
mov eax, dword [ebp - 0x174]
mov esi, dword [ecx + 0x74]
xor edx, edx
imul eax, esi
add eax, dword [ecx + 0x60]
adc edx, dword [ecx + 0x64]
mov ecx, dword [ebp - 0x18c]
push edx
push eax
push ecx
call fcn.00423710
add esp, 0x10
test eax, eax
jne 0x475854
mov ecx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x18c]
sub ecx, ebx
mov esi, dword [ebp + 8]
push edx
push eax
push ecx
mov ebx, ecx
mov eax, dword [esi + 0x7c]
push eax
call fcn.00423500
add esp, 0x10
cmp eax, ebx
jne 0x475854
mov ecx, dword [edi + 0x3c]
xor edx, edx
div dword [ebp - 0x174]
mov ebx, eax
mov eax, dword [ecx + 0x74]
add eax, ebx
mov dword [ecx + 0x74], eax
jmp 0x476e46
mov edx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov eax, dword [edx + 0x80]
mov dword [ebp - 0x20], eax
push eax
lea eax, [ebp - 0x20]
push eax
push esi
push edi
call fcn.0042afe0
add esp, 0x10
test eax, eax
jne 0x476b3d
jmp 0x475854
mov ebx, dword [ebp - 0x14c]
mov ecx, dword [ebx]
jmp 0x475df0
mov edi, dword [ebp - 0x1b0]
mov edi, dword [edi + 0xc]
mov dword [ebp - 0xe4], edi
test edi, edi
je 0x477637
mov eax, dword [ebp - 0x1b4]
mov edi, dword [eax + 0xc]
mov dword [ebp - 0x20c], edi
test edi, edi
je 0x4772af
mov edx, dword [ebp - 0x1b0]
mov edx, dword [edx + 4]
mov dword [ebp - 0x10c], edx
jmp 0x477256
mov edi, dword [edi]
test edi, edi
je 0x4772af
mov ecx, dword [ebp - 0x10c]
cmp dword [edi + 4], ecx
jne 0x477250
mov esi, dword [edi + 0xc]
mov ebx, dword [ebp - 0xe4]
test esi, esi
je 0x47729c
push eax
push eax
mov ecx, dword [esi + 4]
push ecx
mov edx, dword [ebx + 4]
push edx
call sub.msvcrt.dll_strcmp
add esp, 0x10
test eax, eax
jne 0x47729c
mov eax, dword [ebx + 8]
cmp eax, dword [esi + 8]
jne 0x47729c
mov eax, dword [ebx + 0xc]
cmp eax, dword [esi + 0xc]
jne 0x47729c
mov ebx, dword [ebx]
mov esi, dword [esi]
test ebx, ebx
jne 0x47726a
or ebx, esi
jne 0x477250
mov ebx, dword [ebp - 0x184]
cmp ebx, dword [edi + 8]
ja 0x4775e8
mov esi, dword [ebp - 0x1b0]
mov edx, dword [ebp - 0x1b4]
mov edi, dword [ebp - 0x160]
mov eax, dword [ebp - 0x20c]
mov dword [esi], eax
mov dword [esi + 8], edi
mov dword [edx + 0xc], esi
jmp 0x4758e2
sub esp, 0xc
push 0x11
call fcn.00424660
xor edx, edx
add esp, 0x10
jmp 0x475856
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x476c0c
jmp 0x475854
mov edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x178]
imul eax, edx
mov esi, dword [ebp - 0x18c]
push 0
xor edx, edx
mov ecx, dword [esi + 0xa0]
add eax, dword [ecx + 0x10]
adc edx, dword [ecx + 0x14]
push edx
push eax
push esi
call fcn.00423710
add esp, 0x10
test eax, eax
jne 0x475854
mov edi, dword [ebp - 0xdc]
push eax
sub edi, ebx
mov eax, dword [ebp + 8]
push esi
push edi
mov eax, dword [eax + 0x78]
push eax
call fcn.00423500
add esp, 0x10
cmp eax, edi
jne 0x475854
mov edx, dword [ebp + 8]
mov edi, dword [ebp - 0xdc]
mov edx, dword [edx + 0x78]
sub edi, edx
xor edx, edx
mov dword [ebp - 0xdc], edi
mov eax, dword [ebp - 0xdc]
div dword [ebp - 0x178]
mov edx, dword [esi + 0xa0]
mov ebx, dword [edx + 0x1c]
add eax, ebx
cmp eax, dword [ebp - 0x160]
je 0x4773a1
push ecx
push ecx
push 0x923
push str._usr_local_google_buildbot_src_android_gcc_toolchain_build_.._binutils_binutils_2.27_bfd_cofflink.c
call fcn.00423990
add esp, 0x10
mov edx, dword [esi + 0xa0]
mov ecx, dword [ebp - 0x160]
mov dword [edx + 0x1c], ecx
jmp 0x476ac8
mov eax, dword [ebx + 0x14]
mov edi, dword [ebp - 0x120]
mov edx, dword [edx + 0x4c]
shl edx, 4
mov ebx, dword [eax + edi*8]
add edx, ebx
jmp 0x476b72
mov edi, dword [esi + 0x38]
mov eax, dword [esi + 0x1c]
mov dword [ebp - 0xfc], edi
mov edi, dword [esi + 0x4c]
mov dword [ebp - 0xf8], eax
mov eax, edi
shl eax, 4
mov ecx, dword [ebp - 0x11c]
add eax, ecx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x120]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esi + 0x3c]
mov dword [ebp - 0x23c], ecx
mov eax, dword [ecx + eax*8 + 4]
mov ecx, dword [edx + 0x4c]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x118]
mov ebx, dword [edx + 0x1c]
mov dword [ebp - 0x234], ecx
cmp dword [ebp - 0x11c], eax
jae 0x477551
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0x24c]
add ebx, eax
mov dword [ebp - 0x210], ebx
lea edi, [edx + ecx*4]
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0xf8]
sub eax, ecx
mov ebx, dword [ebp - 0x11c]
mov dword [ebp - 0x210], eax
jmp 0x477481
mov edx, dword [ecx + 0x1c]
test edx, edx
js 0x477537
mov dword [ebx + 4], edx
add ebx, 0x10
cmp dword [ebp - 0x118], ebx
jbe 0x47754b
add edi, 4
mov edx, dword [ebx]
mov eax, dword [ebp - 0x210]
add edx, eax
mov dword [edi], 0
mov dword [ebx], edx
mov edx, dword [ebx + 4]
cmp edx, 0xffffffff
je 0x47746f
mov ecx, dword [ebp - 0x190]
test ecx, ecx
je 0x4774d9
lea edx, [ebp - 0x1c]
push eax
mov ecx, dword [ebp + 8]
push eax
mov eax, dword [ebp + 0xc]
push edx
push ebx
push esi
push eax
mov eax, dword [ecx]
push eax
mov eax, dword [ebp - 0x18c]
push eax
call dword [ebp - 0x190]
add esp, 0x20
test eax, eax
je 0x475854
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x47746f
mov edx, dword [ebx + 4]
lea eax, [edx*4]
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x24c], eax
mov ecx, dword [ecx + 0xa0]
mov dword [ebp - 0x240], ecx
mov eax, dword [ecx + 0x5c]
mov ecx, dword [ebp - 0x24c]
mov ecx, dword [eax + ecx]
mov dword [ebp - 0x234], ecx
test ecx, ecx
jne 0x477461
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x24c]
mov ecx, dword [ecx + 0x74]
mov dword [ebp - 0x244], ecx
mov eax, dword [ecx + eax]
mov dword [ebp - 0x24c], eax
cmp eax, 0xffffffff
je 0x47755e
mov dword [ebx + 4], eax
jmp 0x47746f
mov eax, dword [ebp - 0x234]
mov dword [edi], eax
mov dword [eax + 0x1c], 0xfffffffe
jmp 0x47746f
mov edx, dword [esi + 0x3c]
mov edi, dword [esi + 0x4c]
mov eax, dword [edx + 0x4c]
add eax, edi
mov dword [edx + 0x4c], eax
jmp 0x476c5d
lea ecx, [ebp - 0x42]
push eax
lea eax, [edx + edx*2]
mov edx, dword [ebp + 8]
shl eax, 3
push ecx
mov ecx, dword [edx + 0x6c]
add eax, ecx
push eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.0047ca30
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x475854
mov edx, dword [ebp + 8]
sub esp, 0xc
mov eax, dword [edx]
mov edx, dword [eax + 0x18]
push dword [ebx]
push esi
push dword [ebp + 0xc]
push ecx
push eax
call dword [edx + 0x24]
add esp, 0x20
jmp 0x47746f
mov esi, dword [ebp - 0x160]
mov edi, dword [ebp - 0x18c]
mov dword [ebx + 0x24], esi
push eax
mov eax, dword [edi + 4]
mov esi, dword [ebx + 0x78]
mov edx, dword [eax + 0x1b4]
mov eax, dword [ebp - 0x184]
sub ecx, eax
mov eax, dword [ebp - 0x178]
imul ecx, eax
mov eax, ebx
add ecx, esi
add eax, 0x1c
push ecx
push eax
push edi
call dword [edx + 0x10]
add esp, 0x10
jmp 0x476ab6
push eax
push eax
mov eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.00425f10
mov ecx, dword [ebp - 0x164]
mov eax, dword [edi + 8]
mov ebx, dword [ebp - 0xe8]
xor edx, edx
mov dword [ecx], eax
mov eax, dword [ebp - 0x144]
sub eax, ebx
add esp, 0x10
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x144]
div dword [ebp - 0x17c]
mov edx, eax
mov dword [ebp - 0x150], eax
jmp 0x475aca
push eax
push eax
mov eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.00425f10
add esp, 0x10
jmp 0x4758e2