Function at 0x44ac04
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, 0x21c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x18c]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x20]
cmp dword [eax + 0x1c], 1
je 0x44ac40
xor edi, edi
mov eax, edi
add esp, 0x21c
pop ebx
pop esi
pop edi
leave
ret
mov dl, byte [ecx]
test dl, 8
je 0x44ac4e
mov ebx, dword [ebp + 8]
or dword [ebx + 0x48], 0x40
mov esi, dword [eax + 0x20]
mov dword [ebp - 0x190], esi
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x18c], eax
and edx, 3
jne 0x44b042
mov edi, dword [ebp - 0x14c]
xor eax, eax
cmp dword [edi + 0xb8], 0
setne al
mov dword [ebp - 0x194], eax
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x114], edx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x110], ecx
call fcn.00436a2c
mov dword [ebp - 0x10c], eax
test eax, eax
je 0x44ac2e
mov ebx, dword [ebp - 0x190]
test ebx, ebx
jne 0x44b562
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xcc], 0
mov edi, dword [ebp + 8]
mov ebx, dword [edi + 0x6c]
test ebx, ebx
je 0x44c161
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
nop
mov eax, dword [ebx + 0x94]
mov dword [ebp - 0x154], eax
mov dword [ebx + 0x50], 0
mov esi, dword [ebx + 0xa8]
test esi, esi
je 0x44b470
add eax, 0x94
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x134], ebx
jmp 0x44ae05
dec eax
je 0x44b054
mov esi, dword [esi]
test esi, esi
je 0x44ae37
mov eax, dword [esi + 4]
lea edx, [eax - 3]
cmp edx, 1
ja 0x44adf8
mov edi, dword [ebp - 0x134]
inc dword [edi + 0x50]
mov ebx, dword [ebp - 0x150]
mov dword [ebp - 0x128], 1
mov eax, dword [ebp - 0x128]
add dword [ebx], eax
mov esi, dword [esi]
test esi, esi
jne 0x44ae05
mov ebx, dword [ebp - 0x134]
mov edx, dword [ebx + 0x50]
test edx, edx
je 0x44b470
mov eax, dword [ebx + 0x10]
or eax, 4
mov dword [ebx + 0x10], eax
test al, 1
jne 0x44ae69
test byte [ebx + 0x14], 1
jne 0x44ae69
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x44adc4
mov edx, dword [ebp + 0xc]
test byte [edx], 1
jne 0x44ae8a
mov eax, dword [ebp - 0x16c]
test eax, eax
jne 0x44b77b
mov ebx, dword [ebp + 0xc]
xor eax, eax
cmp dword [ebx + 0xc], 3
setne al
mov esi, dword [ebp + 8]
mov dword [esi + 0x80], eax
mov edi, dword [esi + 0x58]
test edi, edi
jne 0x44b5cb
mov edi, dword [ebp + 0xc]
mov dword [esp + 4], edi
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00438b00
test eax, eax
je 0x44af44
mov edx, dword [ebp + 8]
mov ebx, dword [edx + 0x6c]
test ebx, ebx
je 0x44b49b
mov esi, edx
jmp 0x44aefd
mov eax, dword [ebx + 0x94]
mov dword [eax + 0x94], 0
mov dword [eax + 0x98], 0
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x44b49b
test byte [ebx + 0x10], 4
je 0x44aed8
mov dword [esp + 8], ebx
mov eax, dword [ebx + 0x94]
add eax, 0x48
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.00445460
test eax, eax
je 0x44af44
mov eax, dword [ebx + 0x94]
mov edx, dword [eax + 0x90]
test edx, edx
je 0x44aede
mov dword [esp + 8], ebx
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.00445460
test eax, eax
jne 0x44aed8
mov eax, dword [ebp - 0x10c]
test eax, eax
je 0x44af56
mov dword [esp], eax
call fcn.0040644c
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x44af68
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x44af7a
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x44af8c
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x44af9e
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xec]
test eax, eax
je 0x44afb0
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x44afc2
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x44afd4
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x44afe6
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x44aff8
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x44b00a
mov dword [esp], eax
call fcn.00463c40
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx + 0x6c]
test ebx, ebx
je 0x44ac2e
test byte [ebx + 0x10], 4
je 0x44b036
mov eax, dword [ebx + 0x94]
mov eax, dword [eax + 0xb0]
test eax, eax
je 0x44b036
mov dword [esp], eax
call fcn.00463c40
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x44b018
jmp 0x44ac2e
mov dword [ebp - 0x194], 1
jmp 0x44ac81
mov ebx, dword [esi + 0x18]
mov edi, dword [ebx + 0x94]
or byte [ebx + 0x14], 2
test byte [ebx + 0x13], 1
je 0x44b071
mov dword [ebp - 0x16c], 1
mov edx, dword [ebp + 0xc]
test byte [edx], 3
je 0x44b2c0
mov ecx, dword [ebx + 0x50]
mov dword [ebp - 0x128], ecx
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x120], eax
mov ecx, dword [ebx + 0x34]
mov edx, dword [ebx + 0x28]
mov eax, dword [ebx + 0x2c]
cmp eax, ecx
ja 0x44b0ae
jb 0x44b0a6
cmp edx, dword [ebp - 0x120]
jae 0x44b0ae
mov edx, dword [ebp - 0x120]
mov eax, ecx
cmp dword [ebp - 0x15c], eax
ja 0x44b0da
jb 0x44b0c0
cmp dword [ebp - 0x160], edx
jae 0x44b0da
mov ecx, edx
mov dword [ebp - 0x120], eax
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x15c], edx
mov eax, dword [ebx + 0x9c]
mov edx, dword [eax + 8]
cmp dword [edx + 4], 5
je 0x44b350
mov edx, dword [ebp - 0x128]
test edx, edx
je 0x44adff
mov ebx, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x134]
add dword [ecx + 0x50], ebx
test edi, edi
je 0x44c786
mov eax, dword [edi + 0x68]
mov dword [ebp - 0x130], eax
mov edx, dword [edi + 0x6c]
mov dword [ebp - 0x120], edx
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ecx + 0x114]
movzx edx, byte [eax + 3]
xor edx, dword [ebp - 0x130]
or edx, dword [ebp - 0x120]
je 0x44b174
movzx edx, byte [eax + 4]
xor edx, dword [ebp - 0x130]
or edx, dword [ebp - 0x120]
je 0x44b174
mov dword [esp + 4], 0x1ebd
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov ebx, dword [ebp - 0x14c]
mov eax, dword [ebx + 0x114]
movzx edx, byte [eax + 3]
mov dword [ebp - 0x148], edx
xor edx, dword [ebp - 0x130]
or edx, dword [ebp - 0x120]
sete cl
mov ebx, dword [ebp - 0x134]
mov dl, byte [ebx + 0x15]
and edx, 1
xor ecx, edx
movzx ecx, cl
mov dword [ebp - 0x1a4], ecx
test ecx, ecx
jne 0x44b2a4
mov ebx, dword [ebp - 0x154]
add ebx, 0x98
mov edx, dword [edi + 0x90]
test edx, edx
je 0x44ae29
mov ecx, dword [edx + 0x20]
mov dword [ebp - 0x140], ecx
mov edx, dword [edx + 0x24]
mov dword [ebp - 0x144], edx
mov ecx, dword [ebp - 0x120]
xor ecx, edx
mov edx, dword [ebp - 0x140]
xor edx, dword [ebp - 0x130]
or edx, ecx
je 0x44b216
mov edx, dword [ebp - 0x148]
xor edx, dword [ebp - 0x140]
or edx, dword [ebp - 0x144]
je 0x44b22a
movzx eax, byte [eax + 4]
xor eax, dword [ebp - 0x140]
or eax, dword [ebp - 0x144]
je 0x44b22a
mov dword [esp + 4], 0x1ecb
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov eax, dword [ebp - 0x1a4]
test eax, eax
je 0x44b2b0
mov eax, dword [ebp - 0x154]
add eax, 0x98
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x14c]
mov ecx, dword [ecx + 0xbc]
test ecx, ecx
je 0x44b269
mov dword [esp + 4], 0x1ed3
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov eax, dword [edi + 0x90]
mov edx, dword [eax + 0x20]
mov ecx, dword [eax + 0x24]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e2a0
mov edi, dword [ebp - 0x120]
add dword [edi], eax
sub dword [ebp - 0x128], eax
jmp 0x44ae29
mov ebx, dword [ebp - 0x150]
jmp 0x44b1b8
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x120], edx
jmp 0x44b245
mov eax, dword [ebp - 0x14c]
mov edx, dword [eax + 0xbc]
test edx, edx
je 0x44b480
mov edx, dword [ebp + 0xc]
mov al, byte [edx + 1]
shr al, 5
and eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.004450a8
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x14c]
call dword [ecx + 0xbc]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x134]
mov eax, dword [ecx + 0x94]
mov edx, dword [ebp - 0x1d8]
cmp dword [eax + 0xb4], edx
je 0x44b086
mov dword [esp], edx
call fcn.00463c40
jmp 0x44b086
test byte [eax + 0x48], 0x40
jne 0x44b0ed
mov ecx, dword [eax + 0xb0]
mov eax, dword [ecx + 0x3b0]
test eax, eax
je 0x44b490
mov edx, dword [ebp - 0x14c]
mov eax, dword [edx + 0x114]
movzx eax, byte [eax + 5]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov eax, dword [ecx + 0x90]
mov edx, dword [ecx + 0x94]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [ebp - 0x1dc], ecx
call fcn.0045e2a0
mov ecx, dword [ebp - 0x1dc]
cmp dword [ebp - 0x164], 0
ja 0x44b3d7
cmp dword [ebp - 0x168], eax
jae 0x44b3d7
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x168], eax
xor edx, edx
mov dword [ebp - 0x164], edx
cmp dword [ebp - 0x174], 0
ja 0x44b40c
cmp dword [ebp - 0x178], eax
jae 0x44b40c
mov ecx, dword [ecx + 0x310]
test ecx, ecx
je 0x44b40c
mov dword [ebp - 0x120], 0
xor edx, edx
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], edx
nop
test byte [ebx + 0x10], 4
je 0x44b0ed
mov eax, dword [ebx + 0x94]
mov eax, dword [eax + 0x60]
xor edx, edx
cmp dword [ebp - 0x184], 0
ja 0x44b43e
cmp dword [ebp - 0x188], eax
jae 0x44b43e
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], edx
mov eax, dword [ebx + 0x50]
xor edx, edx
cmp dword [ebp - 0x17c], 0
ja 0x44b0ed
cmp dword [ebp - 0x180], eax
jae 0x44b0ed
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], edx
jmp 0x44b0ed
mov eax, dword [ebx + 0x10]
and eax, 0xfffffffb
mov dword [ebx + 0x10], eax
jmp 0x44ae51
mov dword [ebp - 0x128], 0
jmp 0x44b086
mov eax, dword [ecx + 0xa4]
jmp 0x44b3ae
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.00438978
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x80], 0
mov esi, dword [ebx + 0xb0]
mov dword [ebp - 0x144], esi
mov dword [esi + 0x7c], 2
mov edi, dword [ebp - 0x14c]
mov edx, dword [edi + 0x114]
movzx eax, byte [edx + 5]
mov dword [esi + 0x98], eax
mov dword [esi + 0x9c], 0
movzx ecx, byte [edx + 0xb]
mov eax, 1
shl eax, cl
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0x320]
mov edx, dword [esi + 0x324]
mov dword [esp + 0xc], 1
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, esi
add eax, 0x78
mov dword [esp], eax
call fcn.004388bc
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], edx
mov ebx, dword [ebp + 0xc]
test byte [ebx + 1], 0x20
je 0x44b5e4
cmp dword [ebp - 0x164], 0
ja 0x44b54f
cmp dword [ebp - 0x168], 0x13
jbe 0x44b5e4
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0xd0], edx
xor ecx, ecx
jmp 0x44b5f5
mov dword [esp + 4], str..dynsym
mov ebx, dword [ebp - 0x18c]
mov dword [esp], ebx
call fcn.00402d4c
mov dword [ebp - 0x108], eax
mov dword [esp + 4], str..hash
mov dword [esp], ebx
call fcn.00402d4c
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0x108]
test ecx, ecx
je 0x44c276
test eax, eax
je 0x44c276
mov dword [esp + 4], str..gnu.version
mov esi, dword [ebp - 0x18c]
mov dword [esp], esi
call fcn.00402d4c
mov dword [ebp - 0x100], eax
jmp 0x44acce
mov dword [esp + 4], 0x1ef7
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
jmp 0x44aeaa
mov dword [ebp - 0xd0], 0x14
mov edx, 0x14
xor ecx, ecx
mov edi, dword [ebp - 0x14c]
mov eax, dword [edi + 0x114]
movzx eax, byte [eax + 5]
mov ebx, ecx
imul ebx, eax
mul edx
lea edx, [ebx + edx]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004067b4
mov dword [ebp - 0xdc], eax
test eax, eax
je 0x44af44
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb0]
mov eax, dword [eax + 0x68]
cmp eax, 0xff00
ja 0x44c1d4
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0xc], 3
je 0x44b7a1
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x4c], 0
mov byte [ebp - 0x4b], 0
mov dword [ebp - 0x48], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x464180
lea esi, [ebp - 0x60]
mov dword [esp + 8], esi
mov dword [esp + 4], 0
lea ebx, [ebp - 0x114]
mov dword [ebp - 0x120], ebx
mov dword [esp], ebx
call fcn.00441f88
test eax, eax
je 0x44af44
mov edi, dword [ebp + 0xc]
cmp dword [edi + 0xc], 3
je 0x44c791
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x4c], 3
mov byte [ebp - 0x4b], 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb0]
cmp dword [eax + 0x68], 1
jbe 0x44b7af
mov ebx, 1
mov edi, edx
jmp 0x44b744
test eax, eax
je 0x44b76b
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x120]
mov dword [esp], eax
call fcn.00441f88
test eax, eax
je 0x44af44
cmp ebx, 0xfeff
je 0x44b79a
inc ebx
mov eax, dword [edi + 0xb0]
cmp dword [eax + 0x68], ebx
jbe 0x44b7af
mov dword [esp + 4], ebx
mov dword [esp], edi
call fcn.00437e1c
test eax, eax
je 0x44b760
mov edx, dword [edi + 0x80]
mov dword [eax + 0x90], edx
mov dword [ebp - 0x48], ebx
mov ecx, dword [ebp + 0xc]
test byte [ecx], 1
je 0x44b6f2
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
jmp 0x44b702
mov ecx, dword [ebp + 8]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x441ee8
mov eax, dword [edx + 0x20]
mov dword [esp], eax
call fcn.0041b154
jmp 0x44ae8a
mov ebx, 0x10000
jmp 0x44b739
mov esi, dword [ebp - 0x194]
test esi, esi
jne 0x44b64d
mov edx, dword [ebp - 0x15c]
or edx, dword [ebp - 0x160]
jne 0x44c387
mov ebx, dword [ebp - 0x184]
or ebx, dword [ebp - 0x188]
jne 0x44c4c9
mov edi, dword [ebp - 0x17c]
or edi, dword [ebp - 0x180]
jne 0x44c44d
mov ecx, dword [ebp - 0x164]
or ecx, dword [ebp - 0x168]
jne 0x44c53a
mov esi, dword [ebp - 0x174]
or esi, dword [ebp - 0x178]
jne 0x44c508
mov edi, dword [ebp + 0xc]
mov edi, dword [edi + 0x20]
mov dword [ebp - 0x128], edi
mov eax, dword [edi + 0x120]
mov dword [ebp - 0x120], eax
test eax, eax
je 0x44b8e5
mov edx, eax
mov eax, dword [eax + 0x10]
xor esi, esi
xor edi, edi
test ah, 4
je 0x44b889
mov ebx, edx
mov esi, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ecx, edi
or ecx, esi
jne 0x44b874
test ah, 1
jne 0x44b874
mov eax, dword [ebx + 0xa8]
test eax, eax
je 0x44b874
mov edx, dword [eax + 0x10]
mov ecx, dword [eax + 0x14]
add edx, dword [eax + 8]
adc ecx, dword [eax + 0xc]
cmp edi, ecx
ja 0x44b86e
jb 0x44b86a
cmp esi, edx
jae 0x44b86e
mov esi, edx
mov edi, ecx
mov eax, dword [eax]
test eax, eax
jne 0x44b854
add esi, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x44b889
mov eax, dword [ebx + 0x10]
test ah, 4
jne 0x44b839
mov ebx, dword [ebp - 0x120]
mov ecx, dword [ebx + 0x44]
xor eax, eax
xor edx, edx
test cl, 0x20
sete al
setne dl
shl eax, cl
shl edx, cl
add eax, 0xffffffff
adc edx, 0xffffffff
add eax, esi
adc edx, edi
mov esi, 0xffffffff
mov edi, esi
shl esi, cl
test cl, 0x20
je 0x44b8bf
mov edi, esi
xor esi, esi
mov ecx, eax
and ecx, esi
mov ebx, edx
and ebx, edi
mov esi, dword [ebp - 0x120]
sub ecx, dword [esi + 0x18]
sbb ebx, dword [esi + 0x1c]
mov edi, dword [ebp - 0x128]
mov dword [edi + 0x128], ecx
mov dword [edi + 0x12c], ebx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x148], eax
mov edx, eax
test eax, eax
je 0x44bb1e
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x18c]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x148]
mov edi, dword [ecx + 0xa8]
test edi, edi
je 0x44bb01
xor edx, edx
mov dword [ebp - 0x120], 0
lea esi, [esi]
cmp dword [edi + 4], 1
je 0x44b980
inc edx
mov edi, dword [edi]
test edi, edi
jne 0x44b930
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x44bb01
test edx, edx
je 0x44b9f0
mov edi, dword [ebp - 0x148]
mov dword [esp + 4], edi
mov dword [esp], str._A_has_both_ordered_and_unordered_sections
call dword [0x4643d0]
mov dword [esp], 0x10
call fcn.00404d18
xor edi, edi
jmp 0x44ac30
mov eax, dword [edi + 0x18]
mov ebx, dword [eax + 0x9c]
mov ecx, dword [ebx + 8]
cmp dword [ecx + 4], 5
jne 0x44b936
mov esi, dword [ebp - 0x128]
mov esi, dword [esi + 0x114]
mov cl, byte [esi + 0xc]
mov esi, dword [ebx + 0xb0]
cmp byte [esi + 4], cl
jne 0x44b936
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x1d8], edx
call fcn.00438a24
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x1d8]
je 0x44b936
mov ecx, dword [ebx + 0xb0]
mov ecx, dword [ecx + 0x50]
mov eax, dword [ecx + eax*4]
test byte [eax + 8], 0x80
je 0x44b936
inc dword [ebp - 0x120]
jmp 0x44b937
mov edx, dword [ebp - 0x120]
lea eax, [edx*4]
mov dword [esp], eax
call fcn.0045be38
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0x148]
mov eax, dword [ecx + 0xa8]
test eax, eax
je 0x44c35c
xor edi, edi
mov edx, dword [ebp - 0x134]
nop
mov dword [edx + edi*4], eax
inc edi
mov eax, dword [eax]
test eax, eax
jne 0x44ba28
mov dword [esp + 0xc], 0x441e84
mov dword [esp + 8], 4
mov dword [esp + 4], edi
mov ebx, dword [ebp - 0x134]
mov dword [esp], ebx
call sub.msvcrt.dll_qsort
mov eax, dword [ebx]
mov edx, dword [eax + 0x18]
mov ecx, dword [edx + 0x44]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x140], edi
xor edi, edi
jmp 0x44ba8b
mov ecx, dword [ebp - 0x134]
mov eax, dword [ecx + edi*4]
mov edx, dword [eax + 0x18]
mov ecx, dword [edx + 0x44]
mov esi, 1
shl esi, cl
mov ecx, esi
dec ecx
mov dword [ebp - 0x128], ecx
mov ebx, ecx
sar ebx, 0x1f
mov dword [ebp - 0x124], ebx
not ecx
mov dword [ebp - 0x130], ecx
mov ecx, dword [ebp - 0x124]
not ecx
mov ebx, dword [ebp - 0x130]
and ebx, dword [ebp - 0x120]
mov esi, dword [ebp - 0x11c]
and esi, ecx
mov dword [edx + 0x38], ebx
mov dword [edx + 0x3c], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], esi
mov edx, ebx
mov ecx, esi
add edx, dword [eax + 0x10]
adc ecx, dword [eax + 0x14]
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x11c], ecx
inc edi
cmp edi, dword [ebp - 0x140]
jne 0x44ba7c
mov dword [ebp - 0x1a0], ebx
mov dword [ebp - 0x19c], esi
mov ebx, dword [ebp - 0x148]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x148], ebx
test ebx, ebx
jne 0x44b8fb
mov esi, dword [ebp + 8]
mov edx, dword [esi + 0x6c]
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x30]
test eax, eax
je 0x44bb39
mov dword [eax + 0x58], 0
mov eax, dword [eax + 0xa8]
test eax, eax
jne 0x44bb28
mov dword [ebp - 0x128], edx
lea eax, [ebp - 0x80]
mov dword [ebp - 0x1ec], eax
cmp dword [ebp - 0x128], 0
je 0x44d251
mov edx, dword [ebp - 0x128]
mov ebx, dword [edx + 0xa8]
test ebx, ebx
jne 0x44bbaa
jmp 0x44c4f4
sub eax, 3
cmp eax, 1
jbe 0x44bf24
mov dword [esp + 0xc], ebx
mov eax, dword [ebp - 0x128]
mov dword [esp + 8], eax
mov edx, dword [ebp + 0xc]
mov dword [esp + 4], edx
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.0041cda8
test eax, eax
je 0x44af44
mov ebx, dword [ebx]
test ebx, ebx
je 0x44c4f4
mov eax, dword [ebx + 4]
cmp eax, 1
jne 0x44bb6c
mov edx, dword [ebx + 0x18]
mov edx, dword [edx + 0x9c]
mov dword [ebp - 0x120], edx
mov ecx, edx
mov edx, dword [edx + 8]
cmp dword [edx + 4], 5
jne 0x44bb6c
mov esi, dword [ecx + 0xb0]
mov dword [ebp - 0x150], esi
mov edi, dword [ebp - 0x14c]
mov edx, dword [edi + 0x114]
mov cl, byte [edx + 0xc]
cmp byte [esi + 4], cl
jne 0x44bb6c
mov esi, dword [ebp - 0x120]
cmp dword [esi + 0x58], 0
jne 0x44bba0
mov edi, dword [ebp - 0x110]
mov dword [ebp - 0x130], edi
mov eax, dword [edi + 8]
mov eax, dword [eax + 0x18c]
mov dword [ebp - 0x134], eax
mov eax, dword [eax + 0x7c]
mov dword [ebp - 0x1c8], eax
test byte [esi + 0x48], 0x40
jne 0x44c963
mov dword [ebp - 0x1bc], 1
mov eax, dword [ebp - 0x114]
test byte [eax], 3
jne 0x44bc53
mov edx, dword [ebp - 0x134]
xor ecx, ecx
cmp dword [edx + 0xb8], 0
setne cl
mov dword [ebp - 0x1bc], ecx
mov esi, dword [ebp - 0x150]
add esi, 0x78
mov dword [ebp - 0x1b8], esi
mov edi, dword [ebp - 0x150]
cmp dword [edi + 0x3b0], 0
je 0x44c7a3
mov edx, dword [ebp - 0x134]
mov eax, dword [edx + 0x114]
movzx eax, byte [eax + 5]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov eax, dword [edi + 0x90]
mov edx, dword [edi + 0x94]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e2a0
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x1b4], 0
mov edi, dword [ebp - 0x150]
mov edi, dword [edi + 0xb8]
mov dword [ebp - 0x140], edi
test edi, edi
je 0x44c8f5
mov eax, dword [ebp - 0x16c]
shl eax, 5
add eax, dword [ebp - 0x140]
mov dword [ebp - 0x168], eax
mov esi, dword [ebp - 0xe4]
mov dword [ebp - 0x160], esi
mov edi, dword [ebp - 0xe0]
mov dword [ebp - 0x148], edi
cmp dword [ebp - 0x140], eax
jae 0x44c7c6
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x178], ebx
mov ebx, eax
jmp 0x44bd4d
mov al, byte [ebx + 0x14]
shr al, 4
je 0x44bd6f
mov ecx, dword [ebp - 0x148]
mov dword [ecx], 0
add ebx, 0x20
cmp dword [ebp - 0x168], ebx
jbe 0x44c7c0
add dword [ebp - 0x160], 4
add dword [ebp - 0x148], 4
mov eax, dword [ebp - 0x160]
mov dword [eax], 0xffffffff
mov edx, dword [ebp - 0x120]
mov eax, dword [edx + 0xb0]
mov ecx, dword [eax + 0x3b0]
test ecx, ecx
jne 0x44bd1c
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x44c28f
mov dword [ebp - 0x20], str.UND
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x148]
mov dword [edx], eax
cmp edx, dword [ebp - 0xe0]
je 0x44bd30
movzx eax, byte [ebx + 0x14]
and eax, 0xf
cmp eax, 3
je 0x44bd30
mov edx, dword [ebp - 0x114]
cmp dword [edx + 0xc], 3
je 0x44bd30
cmp dword [edx + 0x10], 3
je 0x44bd30
mov eax, dword [ebx + 0x18]
sub eax, 0xff00
cmp eax, 0xff
jbe 0x44bdef
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44bd30
test byte [eax + 0x14], 2
jne 0x44bde0
test byte [eax + 0x11], 1
jne 0x44bd30
test byte [edx], 1
jne 0x44bdef
test byte [eax + 0x11], 0x80
jne 0x44bd30
mov eax, dword [ebx + 0x10]
mov dword [esp + 8], eax
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx + 0xa0]
mov dword [esp + 4], eax
mov esi, dword [ebp - 0x120]
mov dword [esp], esi
call fcn.00435b10
mov dword [ebp - 0x154], eax
test eax, eax
je 0x44af44
mov edx, dword [ebp - 0x114]
cmp dword [edx + 0xc], 2
je 0x44c975
mov eax, dword [edx + 0x10]
test eax, eax
je 0x44c6ce
cmp eax, 2
jne 0x44be66
mov edi, dword [ebp - 0x120]
mov eax, dword [edi + 8]
mov edx, dword [ebp - 0x154]
mov dword [esp + 4], edx
mov dword [esp], edi
call dword [eax + 0x10c]
test eax, eax
jne 0x44bd30
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x1ec]
mov esi, ebx
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x40]
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x130]
mov dword [esp], ecx
call fcn.00438a24
mov dword [ebp - 0x68], eax
inc eax
je 0x44af44
mov esi, dword [ebp - 0x130]
mov eax, dword [esi + 0x80]
mov edi, dword [ebp - 0x160]
mov dword [edi], eax
mov eax, dword [ebp - 0x20]
mov esi, dword [eax + 0x38]
mov edi, dword [eax + 0x3c]
add esi, dword [ebp - 0x80]
adc edi, dword [ebp - 0x7c]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], edi
mov edx, dword [ebp - 0x114]
test byte [edx], 1
jne 0x44beea
mov ecx, dword [eax + 0x40]
add esi, dword [ecx + 0x18]
adc edi, dword [ecx + 0x1c]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], edi
movzx ecx, byte [ebp - 0x6c]
and ecx, 0xf
cmp ecx, 6
je 0x44d20e
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x80]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x154]
mov dword [esp + 4], edx
lea ecx, [ebp - 0x114]
mov dword [esp], ecx
call fcn.00441f88
test eax, eax
jne 0x44bd30
jmp 0x44af44
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x18c]
mov dword [ebp - 0x148], eax
mov eax, dword [ebx + 0x18]
mov eax, dword [eax]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.0041a32c
mov dword [ebp - 0x120], eax
test eax, eax
je 0x44c6bd
mov edx, dword [ebx + 0x18]
mov esi, dword [edx + 8]
mov edi, dword [edx + 0xc]
mov dword [ebp - 0x130], esi
mov dword [ebp - 0x12c], edi
mov edi, dword [ebp - 0x128]
mov eax, dword [edi + 0x94]
mov esi, dword [eax + 0x98]
add esi, dword [eax + 0x94]
shl esi, 2
add esi, dword [eax + 0xb0]
cmp dword [ebx + 4], 3
jne 0x44c101
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x90]
mov dword [ebp - 0x134], eax
test eax, eax
je 0x44c343
mov dword [esi], 0
mov esi, dword [ebp - 0x120]
mov edx, dword [esi + 0x24]
test edx, edx
je 0x44bfd1
mov edi, dword [ebp - 0x12c]
or edi, dword [ebp - 0x130]
jne 0x44c2c3
mov edx, dword [ebx + 8]
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebp + 0xc]
test byte [eax], 1
jne 0x44bfeb
mov esi, dword [ebp - 0x128]
add edx, dword [esi + 0x18]
adc ecx, dword [esi + 0x1c]
mov eax, dword [ebp - 0x148]
mov edi, dword [eax + 0x114]
movzx esi, byte [edi + 9]
mov eax, esi
test al, al
je 0x44c03f
lea eax, [ebp - 0xc8]
and esi, 0xff
lea esi, [esi + esi*2]
lea esi, [ebp + esi*8 - 0xc8]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
add eax, 0x18
cmp eax, esi
jne 0x44c017
cmp byte [edi + 0xa], 0x20
je 0x44c248
mov eax, dword [ebp - 0x134]
cdq
mov edx, eax
mov eax, 0
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], edx
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx]
xor ecx, ecx
add dword [ebp - 0x140], edx
adc dword [ebp - 0x13c], ecx
mov eax, dword [ebp - 0x140]
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], edx
mov edx, dword [ebp - 0x128]
mov eax, dword [edx + 0x94]
mov esi, dword [eax + 0x88]
cmp dword [eax + 0x4c], 9
je 0x44c21e
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0xb4], ecx
movzx edx, byte [edi + 4]
imul edx, dword [eax + 0x94]
lea edx, [esi + edx]
mov dword [esp + 8], edx
lea ecx, [ebp - 0xc8]
mov dword [esp + 4], ecx
mov esi, dword [ebp + 8]
mov dword [esp], esi
call dword [edi + 0x40]
mov edi, dword [ebp - 0x128]
mov eax, dword [edi + 0x94]
inc dword [eax + 0x94]
jmp 0x44bba0
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov eax, dword [edx + 4]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.0041ac4c
test eax, eax
je 0x44c5ef
mov edx, dword [eax + 0xc]
sub edx, 3
cmp edx, 1
jbe 0x44c3b2
mov dword [eax + 0x20], 0xfffffffe
mov dword [esi], eax
mov dword [ebp - 0x134], 0
jmp 0x44bfb2
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
jmp 0x44ae74
xor edx, edx
add eax, 0x3e8
adc edx, 0
mov ecx, dword [ebp - 0x168]
mov ebx, dword [ebp - 0x164]
add ecx, ecx
adc ebx, ebx
add eax, ecx
adc edx, ebx
mov dword [ebp - 0xcc], eax
shld edx, eax, 2
shl eax, 2
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0040686c
mov dword [ebp - 0xd8], eax
test eax, eax
jne 0x44b640
jmp 0x44af44
movzx edx, byte [edi + 3]
imul edx, dword [eax + 0x94]
lea edx, [esi + edx]
mov dword [esp + 8], edx
lea ecx, [ebp - 0xc8]
mov dword [esp + 4], ecx
mov esi, dword [ebp + 8]
mov dword [esp], esi
call dword [edi + 0x38]
jmp 0x44c0ea
mov edx, dword [ebp - 0x134]
shl edx, 8
mov ecx, dword [ebp - 0x120]
mov eax, dword [ecx]
and eax, 0xff
lea eax, [edx + eax]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], 0
jmp 0x44c091
mov dword [esp + 4], 0x1e3c
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
jmp 0x44b5aa
lea edx, [eax - 0xff00]
cmp edx, 0xff
ja 0x44c6f5
cmp eax, 0xfff1
je 0x44c6e9
cmp eax, 0xfff2
je 0x44c76d
mov dword [ebp - 0x20], 0
jmp 0x44bd81
mov dword [esp], esi
call fcn.00418ed0
mov dword [ebp - 0x140], eax
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0040686c
mov esi, eax
test eax, eax
je 0x44af44
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x12c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x120]
mov dword [esp], ecx
call fcn.00419bd0
test eax, eax
je 0x44c3f3
dec eax
je 0x44c63c
mov dword [esp + 8], str.elf_reloc_link_order
mov dword [esp + 4], 0x1d3f
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f2c
mov dword [esp + 4], 0x1cfd
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
jmp 0x44bfac
mov dword [esp + 0xc], 0x441e84
mov dword [esp + 8], 4
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x134]
mov dword [esp], eax
call sub.msvcrt.dll_qsort
jmp 0x44bb01
mov ecx, dword [ebp - 0x160]
mov ebx, dword [ebp - 0x15c]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.004067b4
mov dword [ebp - 0xfc], eax
test eax, eax
jne 0x44b7c1
jmp 0x44af44
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0x40]
mov ecx, dword [edx + 0x90]
mov dword [ebp - 0x134], ecx
mov dword [esi], 0
mov esi, dword [edx + 0x18]
mov edi, dword [edx + 0x1c]
add dword [ebp - 0x130], esi
adc dword [ebp - 0x12c], edi
mov edx, dword [eax + 0x38]
mov ecx, dword [eax + 0x3c]
add dword [ebp - 0x130], edx
adc dword [ebp - 0x12c], ecx
jmp 0x44bfb2
mov edx, dword [ebp - 0x140]
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], 0
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x128]
mov dword [esp + 4], ecx
mov edi, dword [ebp + 8]
mov dword [esp], edi
call fcn.0040324c
mov dword [esp], esi
mov dword [ebp - 0x1dc], eax
call fcn.00463c40
mov eax, dword [ebp - 0x1dc]
test eax, eax
jne 0x44bfd1
jmp 0x44af44
mov edx, dword [ebp - 0x14c]
mov eax, dword [edx + 0x114]
movzx ecx, byte [eax + 9]
mov ebx, 0x18
mov eax, ecx
mul ebx
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x180]
imul ebx, edx
mov eax, dword [ebp - 0x17c]
imul eax, dword [ebp - 0x120]
add ebx, eax
mov eax, dword [ebp - 0x180]
mul dword [ebp - 0x120]
mov dword [ebp - 0x120], eax
add edx, ebx
mov dword [ebp - 0x11c], edx
mov edx, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x11c]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004067b4
mov dword [ebp - 0xf4], eax
test eax, eax
jne 0x44b7e5
jmp 0x44af44
mov esi, dword [ebp - 0x188]
mov edi, dword [ebp - 0x184]
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.004067b4
mov dword [ebp - 0xf8], eax
test eax, eax
jne 0x44b7d3
jmp 0x44af44
mov ebx, dword [ebp - 0x128]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x128], ebx
jmp 0x44bb48
mov eax, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
shld edx, eax, 2
shl eax, 2
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004067b4
mov dword [ebp - 0xec], eax
test eax, eax
jne 0x44b809
jmp 0x44af44
mov ebx, dword [ebp - 0x14c]
mov eax, dword [ebx + 0x114]
movzx eax, byte [eax + 5]
mov ecx, dword [ebp - 0x164]
imul ecx, eax
mul dword [ebp - 0x168]
lea edx, [ecx + edx]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004067b4
mov dword [ebp - 0xf0], eax
test eax, eax
je 0x44af44
mov eax, dword [ebp - 0x168]
mov edx, dword [ebp - 0x164]
shld edx, eax, 5
shl eax, 5
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004067b4
mov dword [ebp - 0xe8], eax
test eax, eax
je 0x44af44
mov ebx, dword [ebp - 0x168]
mov esi, dword [ebp - 0x164]
shld esi, ebx, 2
shl ebx, 2
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.004067b4
mov dword [ebp - 0xe4], eax
test eax, eax
je 0x44af44
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.004067b4
mov dword [ebp - 0xe0], eax
test eax, eax
jne 0x44b7f7
jmp 0x44af44
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x1c]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 4]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [edx + 0x24]
test eax, eax
je 0x44af44
mov dword [ebp - 0x134], 0
jmp 0x44bfb2
cmp dword [ebx + 4], 3
je 0x44c779
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 4]
mov edx, dword [ebp + 0xc]
mov edi, dword [edx + 0x1c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx + 0x20]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call dword [edi + 0x1c]
test eax, eax
jne 0x44c3f3
mov dword [esp], esi
call fcn.00463c40
jmp 0x44af44
mov dword [esp], 0x10
call fcn.00404d18
jmp 0x44af44
mov eax, dword [ebp - 0x20]
test byte [eax + 0x13], 1
je 0x44be69
test byte [edx], 1
je 0x44be42
jmp 0x44be69
mov dword [ebp - 0x20], str.ABS
jmp 0x44bd81
mov dword [esp + 4], eax
mov esi, dword [ebp - 0x120]
mov dword [esp], esi
call fcn.00437e1c
mov dword [ebp - 0x20], eax
test eax, eax
je 0x44bd81
mov dl, byte [eax + 0x14]
and edx, 0xffffffe0
cmp dl, 0x40
jne 0x44bd81
movzx edx, byte [ebx + 0x14]
and edx, 0xf
cmp edx, 3
je 0x44bd81
mov edx, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0xcc]
mov dword [esp + 8], eax
lea edi, [ebp - 0x20]
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x130]
mov dword [esp], eax
call fcn.004598ac
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp 0x44bd81
mov dword [ebp - 0x20], str.COM
jmp 0x44bd81
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 4]
mov eax, dword [eax]
jmp 0x44c64c
mov ebx, dword [ebp - 0x150]
jmp 0x44ae29
cmp dword [ebp - 0x194], 0
jne 0x44b6c0
jmp 0x44b7af
mov esi, dword [ebp - 0x150]
mov esi, dword [esi + 0xa4]
mov dword [ebp - 0x16c], esi
mov dword [ebp - 0x1b4], esi
jmp 0x44bcb9
mov ebx, dword [ebp - 0x178]
mov esi, dword [ebp - 0x120]
mov eax, dword [esi + 0xb0]
mov eax, dword [eax + 0x348]
mov dword [ebp - 0x1cc], eax
mov edx, dword [esi + 0x6c]
test edx, edx
je 0x44c963
mov dword [ebp - 0x1d4], ebx
mov ebx, edx
jmp 0x44c85f
test al, 4
jne 0x44c9a7
mov edi, dword [ebp - 0x134]
mov eax, dword [edi + 0xec]
test eax, eax
je 0x44c828
mov edx, dword [ebp - 0x154]
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov ecx, dword [ebp - 0x130]
mov dword [esp], ecx
call eax
test eax, eax
jne 0x44c854
mov al, byte [ebx + 0x14]
shr al, 5
movzx eax, al
cmp eax, 2
je 0x44d1df
cmp eax, 3
je 0x44d1ac
dec eax
je 0x44d164
test byte [ebx + 0x11], 0x80
je 0x44d11c
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x44c95d
test byte [ebx + 0x14], 2
je 0x44c854
mov eax, dword [ebx + 0x10]
test ah, 1
je 0x44c854
mov ecx, dword [ebx + 0x28]
mov esi, dword [ebx + 0x2c]
mov edi, esi
or edi, ecx
jne 0x44c87d
test al, 4
je 0x44c854
test eax, 0x200000
jne 0x44c854
mov edx, dword [ebx + 0x94]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x154], edx
test edx, edx
jne 0x44c7f3
mov eax, dword [ebx + 0x30]
mov edx, dword [ebx + 0x34]
mov edi, edx
or edi, eax
jne 0x44c8ab
mov eax, ecx
mov edx, esi
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x154], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov esi, dword [ebp - 0x120]
mov dword [esp], esi
call fcn.004033a4
test eax, eax
je 0x44af44
mov eax, dword [ebx + 0x10]
jmp 0x44c7f3
cmp dword [ebp - 0x16c], 0
je 0x44c7c6
mov eax, dword [ebp - 0xec]
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0xf0]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0xe8]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov eax, dword [ebp - 0x16c]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x1b8]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x120]
mov dword [esp], ecx
call fcn.00435bf4
mov dword [ebp - 0x140], eax
test eax, eax
jne 0x44bcd3
jmp 0x44af44
mov ebx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x120]
mov dword [eax + 0x58], 1
jmp 0x44bba0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [edx + 0x24]
mov dword [esp], eax
call fcn.00406078
test eax, eax
je 0x44bd30
mov edx, dword [ebp - 0x114]
jmp 0x44be32
mov dword [esp + 0x10], 0
mov eax, dword [ebp - 0xf4]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov edi, dword [ebp - 0x120]
mov dword [esp], edi
call fcn.004450a8
mov dword [ebp - 0x160], eax
test eax, eax
je 0x44d0de
mov edx, dword [ebp - 0x134]
mov eax, dword [edx + 0x114]
cmp byte [eax + 0xa], 0x20
je 0x44d0a0
mov dword [ebp - 0x188], 0x20
mov dword [ebp - 0x180], 0xffffffff
mov dword [ebp - 0x17c], 0
mov al, byte [ebx + 0x14]
shr al, 5
movzx eax, al
cmp eax, 1
je 0x44ca54
cmp eax, 3
je 0x44ca54
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x18c]
mov eax, dword [eax + 0xd8]
test eax, eax
je 0x44e50d
mov dword [esp], ebx
call eax
test eax, eax
je 0x44e50d
mov eax, dword [ebp - 0xe0]
mov dword [esp + 0x1c], eax
mov ecx, dword [ebp - 0x140]
mov dword [esp + 0x18], ecx
mov esi, dword [ebp - 0x160]
mov dword [esp + 0x14], esi
mov edi, dword [ebp - 0x154]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], ebx
mov eax, dword [ebp - 0x120]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x114]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x130]
mov dword [esp], edx
call dword [ebp - 0x1c8]
test eax, eax
je 0x44af44
cmp dword [ebp - 0x1bc], 0
je 0x44c7fb
mov ecx, dword [ebx + 0x94]
mov dword [ebp - 0x148], ecx
mov esi, dword [ebp - 0x134]
test byte [esi + 0x130], 0x20
je 0x44d0c3
mov edx, dword [esi + 0x114]
movzx eax, byte [edx + 4]
xor eax, dword [ecx + 0x68]
or eax, dword [ecx + 0x6c]
sete al
movzx eax, al
mov dword [ebp - 0x1c0], eax
imul ecx, dword [ebx + 0x50], 0x18
movzx eax, byte [edx + 9]
imul ecx, eax
add ecx, dword [ebp - 0x160]
mov dword [ebp - 0x1d0], ecx
mov edx, dword [ebx + 0x40]
mov ecx, dword [edx + 0x94]
mov eax, dword [ecx + 0x98]
add eax, dword [ecx + 0x94]
mov esi, dword [ecx + 0xb0]
lea eax, [esi + eax*4]
mov dword [ebp - 0x168], eax
mov esi, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov dword [ebp - 0x1a0], esi
mov dword [ebp - 0x19c], edi
mov eax, dword [ebp - 0x114]
test byte [eax], 1
jne 0x44cb5d
mov esi, dword [edx + 0x18]
mov edi, dword [edx + 0x1c]
add dword [ebp - 0x1a0], esi
adc dword [ebp - 0x19c], edi
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x1a4], ebx
mov ebx, eax
cmp dword [ebp - 0x1d0], ebx
jbe 0x44cfd8
mov edi, dword [ebp - 0x134]
mov eax, dword [edi + 0x114]
movzx eax, byte [eax + 9]
cmp eax, dword [ebp - 0x194]
je 0x44cdaf
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebp - 0x1a4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x114]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x130]
mov dword [esp], edx
call fcn.0044091c
mov dword [ebx], eax
mov dword [ebx + 4], edx
cmp edx, 0xffffffff
jae 0x44ccb3
mov edi, dword [ebp - 0x1a4]
add eax, dword [edi + 0x38]
adc edx, dword [edi + 0x3c]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x178], ecx
test byte [ecx], 1
jne 0x44cc0a
mov ecx, dword [edi + 0x40]
add eax, dword [ecx + 0x18]
adc edx, dword [ecx + 0x1c]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov dword [ebp - 0x1a0], esi
mov dword [ebp - 0x19c], edi
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov cl, byte [ebp - 0x188]
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
je 0x44cc35
mov eax, edx
xor edx, edx
mov dword [ebp - 0x1f4], eax
test eax, eax
je 0x44cca5
cmp dword [ebp - 0x16c], eax
ja 0x44cceb
mov esi, dword [ebp - 0x120]
mov ecx, dword [esi + 0xb0]
mov edx, dword [ebp - 0x1f4]
sub edx, dword [ebp - 0x1b4]
mov eax, dword [ecx + 0x348]
mov esi, dword [eax + edx*4]
jmp 0x44cc71
mov esi, dword [esi + 0x14]
mov eax, dword [esi + 0xc]
sub eax, 6
cmp eax, 1
jbe 0x44cc6e
cmp dword [esi + 0x20], 0
js 0x44cc96
mov dword [esp + 4], 0x1c20
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov dword [esi + 0x20], 0xfffffffe
mov ecx, dword [ebp - 0x168]
mov dword [ecx], esi
add ebx, 0x18
inc dword [ebp - 0x194]
jmp 0x44cb75
cmp eax, 0xfffffffd
jbe 0x44cbda
mov esi, dword [ebp - 0x1a0]
mov edi, dword [ebp - 0x19c]
mov dword [ebx], esi
mov dword [ebx + 4], edi
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
jmp 0x44cca5
mov edi, dword [ebp - 0x120]
mov ecx, dword [edi + 0xb0]
cmp dword [ecx + 0x3b0], 0
je 0x44cdc5
mov eax, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x1f4]
cmp dword [eax + edx*4], 0
je 0x44cc57
mov esi, dword [ebp - 0x168]
mov dword [esi], 0
mov esi, dword [ebp - 0x1f4]
shl esi, 5
add esi, dword [ebp - 0x140]
mov edi, dword [ebp - 0x1ec]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x1f4]
mov esi, dword [eax + edi*4]
movzx eax, byte [ebp - 0x6c]
and eax, 0xf
cmp eax, 3
je 0x44cf05
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0x1f4]
cmp dword [eax + edx*4], 0xffffffff
je 0x44cdd0
mov edx, dword [ebp - 0x1f4]
mov edi, dword [eax + edx*4]
mov eax, edi
xor edx, edx
mov cl, byte [ebp - 0x188]
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x44cd8e
mov edx, eax
xor eax, eax
mov esi, dword [ebp - 0x180]
and esi, dword [ebx + 8]
mov ecx, dword [ebp - 0x17c]
and ecx, dword [ebx + 0xc]
or esi, eax
mov dword [ebx + 8], esi
or ecx, edx
mov dword [ebx + 0xc], ecx
jmp 0x44cca5
add dword [ebp - 0x168], 4
mov dword [ebp - 0x194], 0
jmp 0x44cb9d
mov eax, dword [ebp - 0xe0]
jmp 0x44cd1a
mov ecx, dword [ebp - 0x178]
cmp dword [ecx + 0xc], 3
je 0x44cef4
mov eax, dword [ebp - 0x70]
mov dword [esp + 8], eax
mov edi, dword [ebp - 0x150]
mov eax, dword [edi + 0xa0]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x120]
mov dword [esp], eax
call fcn.00435b10
mov dword [ebp - 0x1c4], eax
test eax, eax
je 0x44af44
mov edi, dword [esi + 0x40]
mov dword [esp + 4], edi
mov edx, dword [ebp - 0x130]
mov dword [esp], edx
call fcn.00438a24
mov dword [ebp - 0x68], eax
inc eax
je 0x44af44
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], edx
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x7c]
add dword [ebp - 0x178], edx
adc dword [ebp - 0x174], ecx
mov eax, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x114]
test byte [eax], 1
jne 0x44ce9b
mov edx, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x174]
add edx, dword [edi + 0x18]
adc ecx, dword [edi + 0x1c]
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x7c], ecx
movzx ecx, byte [ebp - 0x6c]
and ecx, 0xf
cmp ecx, 6
je 0x44cf98
mov edi, dword [ebp - 0x130]
mov ecx, dword [edi + 0x80]
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0x1f4]
mov dword [eax + edx*4], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
lea ecx, [ebp - 0x80]
mov dword [esp + 8], ecx
mov esi, dword [ebp - 0x1c4]
mov dword [esp + 4], esi
lea edi, [ebp - 0x114]
mov dword [esp], edi
call fcn.00441f88
test eax, eax
je 0x44af44
mov eax, dword [ebp - 0xe4]
jmp 0x44cd6d
mov dword [esp], 5
call fcn.00404d18
jmp 0x44af44
cmp esi, 0x464240
je 0x44cf94
test esi, esi
je 0x44c6bd
cmp dword [esi + 0x9c], 0
je 0x44c6bd
mov eax, dword [esi + 0x40]
cmp eax, 0x464240
je 0x44cf6c
mov edi, dword [eax + 0x90]
test edi, edi
jne 0x44cf4e
mov dword [esp + 4], 0x1c4d
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
cmp dword [ebp - 0x1c0], 0
je 0x44cd76
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
add dword [ebx + 0x10], eax
adc dword [ebx + 0x14], edx
jmp 0x44cd76
mov eax, dword [esi + 0x84]
xor edi, edi
test eax, eax
je 0x44cf4e
mov eax, dword [eax + 0x40]
test eax, eax
je 0x44cf4e
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
sub dword [ebx + 0x10], edx
sbb dword [ebx + 0x14], ecx
cmp eax, 0x464240
jne 0x44cf30
jmp 0x44cf4e
xor edi, edi
jmp 0x44cf4e
mov ecx, dword [eax + 0x20]
cmp dword [ecx + 0x120], 0
jne 0x44cfbe
mov dword [esp + 4], 0x1c7e
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov eax, dword [ebp - 0x114]
mov eax, dword [eax + 0x20]
mov eax, dword [eax + 0x120]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
sub dword [ebp - 0x80], edx
sbb dword [ebp - 0x7c], ecx
jmp 0x44ce9b
mov ebx, dword [ebp - 0x1a4]
mov esi, dword [ebp - 0x134]
mov edi, dword [esi + 0xb8]
test edi, edi
je 0x44cff9
mov eax, dword [ebp - 0x114]
test byte [eax], 3
je 0x44cffe
mov edi, 0x441974
mov edx, dword [ebp - 0x148]
mov eax, dword [edx + 0x64]
or eax, dword [edx + 0x60]
jne 0x44d0ed
mov eax, dword [ebx + 0x94]
mov esi, dword [eax + 0x90]
test esi, esi
je 0x44c7fb
mov eax, dword [esi + 0x1c]
or eax, dword [esi + 0x18]
je 0x44c7fb
mov edx, dword [ebp - 0x134]
mov eax, dword [edx + 0x114]
movzx eax, byte [eax + 9]
imul eax, eax, 0x18
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x148]
mov eax, dword [ecx + 0x68]
mov edx, dword [ecx + 0x6c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov eax, dword [ecx + 0x60]
mov edx, dword [ecx + 0x64]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e2a0
imul eax, dword [ebp - 0x168]
add eax, dword [ebp - 0x160]
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov esi, dword [ebp - 0x130]
mov dword [esp], esi
call edi
test eax, eax
jne 0x44c7fb
jmp 0x44af44
mov dword [ebp - 0x188], 8
mov dword [ebp - 0x180], 0xff
mov dword [ebp - 0x17c], 0
jmp 0x44ca17
mov dword [ebp - 0x1c0], 0
mov ecx, dword [ebp - 0x134]
mov edx, dword [ecx + 0x114]
jmp 0x44caf3
cmp dword [ebx + 0x50], 0
je 0x44c9e3
jmp 0x44af44
mov ecx, dword [ebp - 0x160]
mov dword [esp + 0xc], ecx
mov eax, edx
add eax, 0x48
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov esi, dword [ebp - 0x130]
mov dword [esp], esi
call edi
test eax, eax
jne 0x44d010
jmp 0x44af44
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov eax, dword [ebx + 0x38]
mov edx, dword [ebx + 0x3c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov esi, dword [ebp - 0x154]
mov dword [esp + 8], esi
mov eax, dword [ebx + 0x40]
mov dword [esp + 4], eax
mov edi, dword [ebp - 0x130]
mov dword [esp], edi
call fcn.0040324c
test eax, eax
jne 0x44c854
jmp 0x44af44
mov esi, dword [ebp - 0x154]
mov dword [esp + 0x10], esi
mov eax, dword [ebx + 0x94]
add eax, 0xcc
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov eax, dword [ebp - 0x114]
mov eax, dword [eax + 0x20]
add eax, 0x5c
mov dword [esp + 4], eax
mov edi, dword [ebp - 0x130]
mov dword [esp], edi
call fcn.0045a8d4
test eax, eax
jne 0x44c854
jmp 0x44af44
mov edx, dword [ebp - 0x154]
mov dword [esp + 0xc], edx
mov dword [esp + 8], ebx
mov eax, dword [ebp - 0x114]
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x130]
mov dword [esp], ecx
call fcn.004515f4
test eax, eax
jne 0x44c854
jmp 0x44af44
mov eax, dword [ebx + 0x94]
mov eax, dword [eax + 0xcc]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x130]
mov dword [esp], eax
call fcn.00459738
test eax, eax
jne 0x44c854
jmp 0x44af44
mov ecx, dword [edx + 0x20]
cmp dword [ecx + 0x120], 0
jne 0x44d237
mov dword [esp + 4], 0x1af0
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp - 0x20]
mov edx, dword [edx + 0x20]
mov edx, dword [edx + 0x120]
mov ecx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
sub dword [ebp - 0x80], edx
sbb dword [ebp - 0x7c], ecx
jmp 0x44beea
mov dword [ebp - 0x2c], 0
lea esi, [ebp - 0x114]
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x28], 1
lea edi, [ebp - 0x2c]
mov dword [esp + 8], edi
mov dword [esp + 4], 0x442688
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x20]
mov dword [esp], eax
call fcn.0041b154
xor edi, edi
cmp dword [ebp - 0x2c], 0
jne 0x44ac30
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x80]
mov ebx, dword [ebp - 0x144]
mov dword [ebx + 0xa4], eax
cmp dword [ebp - 0x190], 0
jne 0x44d55f
mov esi, dword [ebp + 0xc]
mov edx, dword [esi + 0x20]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov ebx, dword [ebp - 0x120]
mov dword [ebp - 0x24], ebx
lea esi, [ebp - 0x2c]
mov dword [esp + 8], esi
mov dword [esp + 4], 0x442688
mov dword [esp], edx
call fcn.0041b154
xor edi, edi
cmp dword [ebp - 0x2c], 0
jne 0x44ac30
mov edx, dword [ebp - 0x14c]
mov eax, dword [edx + 0xa8]
test eax, eax
je 0x44d32c
mov dword [esp + 0xc], fcn.00441f88
mov dword [esp + 8], ebx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 4], ecx
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call eax
test eax, eax
je 0x44ac30
mov edx, dword [ebp - 0x14c]
add edx, 0x114
mov eax, dword [ebp - 0x120]
call fcn.00441d34
xor edi, edi
test eax, eax
je 0x44ac30
mov ebx, dword [ebp - 0x1b0]
mov esi, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x144]
add ebx, dword [eax + 0x90]
adc esi, dword [eax + 0x94]
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0xb0]
mov dword [ebp - 0x120], edx
cmp dword [edx + 0x2b8], 0
je 0x44d473
mov dword [edx + 0x2bc], 0x12
mov dword [edx + 0x2d8], 4
mov dword [edx + 0x2dc], 0
mov dword [edx + 0x2f0], 4
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x80]
shl eax, 2
mov dword [ebp - 0x128], eax
mov dword [edx + 0x2d0], eax
mov dword [edx + 0x2d4], 0
mov dword [esp + 0xc], 1
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov eax, edx
add eax, 0x2b8
mov dword [esp], eax
call fcn.004388bc
mov ebx, eax
mov esi, edx
mov dword [esp + 0xc], 0
mov ecx, dword [ebp - 0x120]
mov eax, dword [ecx + 0x2e8]
mov edx, dword [ecx + 0x2ec]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00408268
test eax, eax
jne 0x44ac30
mov edx, dword [ebp + 8]
mov dword [esp + 0xc], edx
mov ecx, dword [ebp - 0x128]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov eax, dword [ebp - 0xd8]
mov dword [esp], eax
call fcn.00407fc8
test edx, edx
jne 0x44ac2e
cmp eax, dword [ebp - 0x128]
jne 0x44ac2e
mov edi, dword [ebp + 8]
mov edi, dword [edi + 0xb0]
mov dword [ebp - 0x120], edi
mov eax, dword [ebp - 0x120]
mov dword [eax + 0x10c], 3
mov dword [eax + 0x110], 0
mov dword [eax + 0x114], 0
mov dword [eax + 0x118], 0
mov dword [eax + 0x11c], 0
mov eax, dword [ebp - 0x10c]
mov dword [esp], eax
call fcn.004065d8
mov ecx, dword [ebp - 0x120]
mov dword [ecx + 0x120], eax
mov dword [ecx + 0x124], edx
mov dword [ecx + 0x128], 0
mov dword [ecx + 0x12c], 0
mov dword [ecx + 0x130], 0
mov dword [ecx + 0x134], 0
mov dword [ecx + 0x140], 1
mov dword [esp + 0xc], 1
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov eax, ecx
add eax, 0x108
mov dword [esp], eax
call fcn.004388bc
mov ecx, eax
mov ebx, edx
mov esi, dword [ebp + 8]
mov edx, dword [esi + 0xb0]
mov dword [edx + 0x320], ecx
mov dword [edx + 0x324], ebx
cmp dword [esi + 0x80], 0
jne 0x44e6c2
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x6c]
test ebx, ebx
je 0x44d7d6
test byte [ebx + 0x10], 4
jne 0x44d75b
mov ebx, dword [ebx + 0xc]
jmp 0x44d548
mov eax, dword [ebp - 0x108]
cmp dword [eax + 0x40], 0x464240
je 0x44d7cb
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp + 0xc]
test byte [eax], 8
jne 0x44d59d
mov edx, dword [eax + 0x20]
mov dword [ebp - 0x128], 0
cmp dword [edx + 0x134], 0
je 0x44d660
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov byte [ebp - 0x6c], 3
mov byte [ebp - 0x6b], 0
mov edx, dword [ebp + 8]
mov ebx, dword [edx + 0x6c]
mov dword [ebp - 0x128], 0
test ebx, ebx
je 0x44d65a
mov eax, dword [ebx + 0x94]
mov esi, dword [eax + 0xa8]
test esi, esi
jle 0x44d652
mov edi, dword [eax + 0x9c]
test edi, edi
jg 0x44d600
mov dword [esp + 4], 0x2027
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov dword [ebp - 0x68], edi
mov eax, dword [ebx + 0x18]
mov edx, dword [ebx + 0x1c]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
mov ecx, dword [ebp - 0x14c]
mov edx, dword [ecx + 0x114]
cmp dword [ebp - 0x128], esi
jge 0x44d629
mov dword [ebp - 0x128], esi
mov dword [esp + 0xc], 0
movzx eax, byte [edx + 5]
imul eax, esi
add eax, dword [ebp - 0x130]
mov dword [esp + 8], eax
lea esi, [ebp - 0x80]
mov dword [esp + 4], esi
mov edi, dword [ebp + 8]
mov dword [esp], edi
call dword [edx + 0x20]
mov ebx, dword [ebx + 0xc]
jmp 0x44d5ca
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x20]
mov ebx, dword [edx + 0x118]
test ebx, ebx
je 0x44d73d
lea edx, [ebp - 0x80]
mov dword [ebp - 0x1f0], edx
mov eax, dword [ebx + 0x18]
mov edx, dword [ebx + 0x1c]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov al, byte [ebx + 0x25]
mov byte [ebp - 0x6b], al
lea esi, [ebx + 0x10]
mov edi, dword [ebp - 0x1f0]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x28]
test eax, eax
je 0x44d6e7
lea edx, [eax - 0xff00]
cmp edx, 0xff
jbe 0x44d6e7
mov dword [esp + 4], eax
mov eax, dword [ebx + 4]
mov dword [esp], eax
call fcn.00437e1c
mov ecx, dword [eax + 0x40]
mov edx, dword [ecx + 0x94]
mov edx, dword [edx + 0x9c]
mov dword [ebp - 0x68], edx
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
add eax, dword [ecx + 0x18]
adc edx, dword [ecx + 0x1c]
add eax, dword [ebx + 0x10]
adc edx, dword [ebx + 0x14]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
mov edx, dword [ebx + 0xc]
cmp dword [ebp - 0x128], edx
jge 0x44d6f8
mov dword [ebp - 0x128], edx
mov esi, dword [ebp - 0x14c]
mov ecx, dword [esi + 0x114]
mov dword [esp + 0xc], 0
movzx eax, byte [ecx + 5]
imul eax, edx
add eax, dword [ebp - 0x130]
mov dword [esp + 8], eax
lea edi, [ebp - 0x80]
mov dword [esp + 4], edi
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [ecx + 0x20]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x44d677
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x20]
mov eax, dword [ebp - 0x108]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x128]
inc ecx
mov dword [eax + 0x2c], ecx
jmp 0x44d2bf
mov eax, dword [ebx + 0x94]
lea ecx, [eax + 0x88]
lea edx, [eax + 0x68]
mov esi, dword [eax + 0xb0]
mov dword [esp + 4], esi
mov eax, dword [eax + 0x94]
mov dword [esp], eax
mov eax, dword [ebp + 8]
call fcn.00441b3c
mov eax, dword [ebx + 0x94]
mov edx, dword [eax + 0x90]
test edx, edx
je 0x44d7bf
lea ecx, [edx + 0x40]
add edx, 0x20
mov esi, dword [eax + 0x94]
shl esi, 2
add esi, dword [eax + 0xb0]
mov dword [esp + 4], esi
mov eax, dword [eax + 0x98]
mov dword [esp], eax
mov eax, dword [ebp + 8]
call fcn.00441b3c
mov dword [ebx + 0x50], 0
jmp 0x44d55a
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 0x20]
jmp 0x44d2bf
cmp dword [ebp - 0x190], 0
je 0x44de76
mov edx, dword [ebp + 0xc]
test byte [edx + 2], 2
je 0x44d8ea
cmp dword [ebp - 0x18c], 0
je 0x44d8ea
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 8]
mov esi, dword [eax + 0x18c]
mov eax, dword [esi + 0x114]
mov al, byte [eax + 9]
mov byte [ebp - 0x128], al
mov dword [esp + 4], str..rela.dyn
mov dword [esp], ecx
call fcn.00402d4c
mov ebx, eax
test eax, eax
je 0x44d83a
mov eax, dword [eax + 0x2c]
or eax, dword [ebx + 0x28]
jne 0x44e715
mov dword [esp + 4], str..rel.dyn
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.00402d4c
mov ebx, eax
mov dword [ebp - 0x120], 0
test eax, eax
je 0x44d8f6
mov eax, dword [eax + 0x2c]
or eax, dword [ebx + 0x28]
je 0x44dd44
mov eax, dword [esi + 0x114]
movzx edi, byte [eax + 3]
mov dword [ebp - 0x130], edi
mov edx, dword [eax + 0x34]
mov dword [ebp - 0x144], edx
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x150], eax
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x134], ecx
test eax, eax
je 0x44d8d8
cmp dword [eax + 4], 1
jne 0x44d8d4
mov ecx, dword [eax + 0x18]
mov edx, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x2c]
add dword [ebp - 0x120], edx
adc dword [ebp - 0x11c], ecx
mov eax, dword [eax]
jmp 0x44d8b5
mov ecx, dword [ebp - 0x134]
cmp edi, dword [ebp - 0x11c]
je 0x44dd4b
xor ebx, ebx
mov dword [ebp - 0x120], 0
mov dword [esp + 4], str..dynamic
mov esi, dword [ebp - 0x18c]
mov dword [esp], esi
call fcn.00402d4c
mov esi, eax
test eax, eax
jne 0x44d926
mov dword [esp + 4], 0x20c2
mov dword [esp], str..._.._.._binutils_2.16.1_bfd_elflink.c
call fcn.00404f00
mov edi, dword [esi + 0x74]
mov dword [ebp - 0x128], edi
add edi, dword [esi + 0x28]
mov dword [ebp - 0x148], edi
mov esi, ebx
mov ebx, dword [ebp - 0x14c]
mov edi, dword [ebp - 0x148]
cmp dword [ebp - 0x128], edi
jae 0x44de76
mov eax, dword [ebx + 0x114]
lea edx, [ebp - 0x40]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x128]
mov dword [esp + 4], ecx
mov edi, dword [ebp - 0x18c]
mov dword [esp], edi
call dword [eax + 0x2c]
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
cmp edx, 0
ja 0x44db76
cmp eax, 0x12
ja 0x44db76
cmp edx, 0
ja 0x44dab0
cmp eax, 0x11
jae 0x44dab0
mov ecx, eax
xor ecx, 6
mov edi, str..dynsym
or ecx, edx
je 0x44da39
cmp edx, 0
ja 0x44da87
cmp eax, 6
ja 0x44da87
mov ecx, eax
xor ecx, 4
mov edi, str..hash
or ecx, edx
je 0x44da39
cmp edx, 0
ja 0x44da34
cmp eax, 4
ja 0x44da34
mov ecx, edx
or ecx, eax
jne 0x44da7f
cmp dword [ebp - 0x120], 0
je 0x44da7f
mov eax, dword [ebx + 0x114]
movzx edx, byte [eax + 6]
add edx, dword [ebp - 0x128]
cmp dword [ebp - 0x148], edx
jbe 0x44da25
mov edx, dword [esi + 0x94]
mov edx, dword [edx + 4]
cmp edx, 4
je 0x44e43a
cmp edx, 9
je 0x44e40d
movzx eax, byte [eax + 6]
add dword [ebp - 0x128], eax
jmp 0x44d940
mov edi, str..dynstr
mov dword [esp + 4], edi
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00402d4c
test eax, eax
je 0x44db59
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, dword [ebx + 0x114]
mov edi, dword [ebp - 0x128]
mov dword [esp + 8], edi
lea edx, [ebp - 0x40]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x18c]
mov dword [esp], ecx
call dword [eax + 0x30]
mov eax, dword [ebx + 0x114]
jmp 0x44da25
mov ecx, eax
xor ecx, 0xc
or ecx, edx
je 0x44e4e9
cmp edx, 0
ja 0x44e44a
cmp eax, 0xc
ja 0x44e44a
cmp edx, 0
ja 0x44da7f
cmp eax, 8
ja 0x44da7f
add eax, 0xffffffef
adc edx, 0xffffffff
cmp edx, 0
ja 0x44dd06
cmp eax, 1
ja 0x44dd06
mov dword [ebp - 0x144], 9
mov ecx, dword [ebp + 8]
mov edi, dword [ecx + 0xb0]
mov eax, dword [edi + 0x68]
mov dword [ebp - 0x154], eax
xor eax, eax
xor edx, edx
mov dword [ebp - 0x130], 1
mov ecx, dword [ebp - 0x40]
xor ecx, 0x12
mov dword [ebp - 0x134], ecx
mov ecx, dword [ebp - 0x3c]
or dword [ebp - 0x134], ecx
mov ecx, dword [ebp - 0x40]
xor ecx, 8
mov dword [ebp - 0x140], ecx
mov ecx, dword [ebp - 0x3c]
or dword [ebp - 0x140], ecx
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x154]
cmp dword [ebp - 0x130], ebx
jae 0x44dcef
mov ebx, dword [ebp - 0x130]
mov ecx, dword [edi + 0x50]
mov ebx, dword [ecx + ebx*4]
mov dword [ebp - 0x150], ebx
mov ecx, dword [ebp - 0x144]
cmp dword [ebx + 4], ecx
je 0x44dbcd
inc dword [ebp - 0x130]
jmp 0x44db22
mov dword [esp + 8], edi
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], str._B:_could_not_find_output_section__s
call dword [0x4643d0]
jmp 0x44af44
mov ecx, eax
xor ecx, 0x20
mov edi, str..preinit_array
or ecx, edx
je 0x44da39
cmp edx, 0
ja 0x44dcb7
cmp eax, 0x20
ja 0x44dcb7
mov ecx, eax
xor ecx, 0x1a
mov edi, str..fini_array
or ecx, edx
je 0x44da39
cmp edx, 0
ja 0x44dc2b
cmp eax, 0x1a
ja 0x44dc2b
mov ecx, eax
xor ecx, 0x19
mov edi, str..init_array
or ecx, edx
je 0x44da39
jmp 0x44da7f
test byte [ebx + 8], 2
je 0x44db51
cmp dword [ebp - 0x134], 0
je 0x44dc1a
cmp dword [ebp - 0x140], 0
je 0x44dc1a
mov ecx, edx
or ecx, eax
je 0x44dc09
mov ebx, dword [ebp - 0x150]
cmp dword [ebx + 0x14], edx
ja 0x44db51
jb 0x44dc09
cmp dword [ebx + 0x10], eax
jae 0x44db51
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx + 0x10]
mov edx, dword [ecx + 0x14]
jmp 0x44db51
mov ebx, dword [ebp - 0x150]
add eax, dword [ebx + 0x18]
adc edx, dword [ebx + 0x1c]
jmp 0x44db51
mov ecx, eax
xor ecx, 0x1b
mov edi, str..init_array
or ecx, edx
je 0x44dc4b
mov ecx, eax
xor ecx, 0x1c
mov edi, str..fini_array
or ecx, edx
jne 0x44da7f
mov dword [esp + 4], edi
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.00402d4c
test eax, eax
je 0x44dc9a
mov edx, dword [eax + 0x2c]
or edx, dword [eax + 0x28]
jne 0x44dc83
mov dword [esp + 4], edi
mov dword [esp], str.warning:__s_section_has_zero_size
mov dword [ebp - 0x1dc], eax
call dword [0x4643d0]
mov eax, dword [ebp - 0x1dc]
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, dword [ebx + 0x114]
jmp 0x44da62
mov dword [esp + 8], edi
mov ebx, dword [ebp + 8]
mov dword [esp + 4], ebx
mov dword [esp], str._B:_could_not_find_output_section__s
call dword [0x4643d0]
jmp 0x44af44
mov ecx, eax
xor ecx, 0x6ffffff0
mov edi, str..gnu.version
or ecx, edx
je 0x44da39
cmp edx, 0
ja 0x44dd15
cmp eax, 0x6ffffff0
ja 0x44dd15
mov ecx, eax
xor ecx, 0x21
mov edi, str..preinit_array
or ecx, edx
je 0x44dc4b
jmp 0x44da7f
mov ebx, dword [ebp - 0x14c]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, dword [ebx + 0x114]
jmp 0x44da62
mov dword [ebp - 0x144], 4
jmp 0x44dad2
mov ecx, eax
xor ecx, 0x6ffffffc
mov edi, str..gnu.version_d
or ecx, edx
je 0x44da39
mov ecx, eax
xor ecx, 0x6ffffffe
mov edi, str..gnu.version_r
or ecx, edx
je 0x44da39
jmp 0x44da7f
xor ebx, ebx
jmp 0x44d8f6
cmp ecx, dword [ebp - 0x120]
jne 0x44d8ea
mov eax, dword [ebp - 0x130]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp], ecx
mov dword [esp + 4], edi
call fcn.0045e2a0
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x148], edx
movzx eax, byte [ebp - 0x128]
dec eax
imul eax, eax, 0x18
lea edi, [eax + 0x28]
mov ecx, edx
imul ecx, edi
mov eax, dword [ebp - 0x134]
mul edi
mov dword [ebp - 0x120], eax
add edx, ecx
mov dword [ebp - 0x11c], edx
mov edx, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x11c]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0040686c
mov dword [ebp - 0x128], eax
test eax, eax
je 0x44de2a
mov eax, dword [esi + 0x114]
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0xffffffff
cmp byte [eax + 0xa], 0x20
jne 0x44de00
mov dword [ebp - 0x140], 0xffffff00
mov dword [ebp - 0x13c], 0xffffffff
mov ecx, dword [ebx + 0xa8]
mov dword [ebp - 0x154], esi
mov dword [ebp - 0x160], ebx
mov esi, ecx
test esi, esi
je 0x44e229
cmp dword [esi + 4], 1
je 0x44e161
mov esi, dword [esi]
jmp 0x44de14
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x1c]
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov ebx, dword [ebp + 8]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0
mov dword [esp + 4], str.Not_enough_memory_to_sort_relocations
mov dword [esp], ecx
call dword [eax + 0x14]
xor ebx, ebx
mov dword [ebp - 0x120], 0
jmp 0x44d8f6
cmp dword [ebp - 0x18c], 0
je 0x44df78
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
mov edx, dword [ebp + 8]
mov dword [esp], edx
mov ecx, dword [ebp - 0x14c]
call dword [ecx + 0x84]
test eax, eax
je 0x44af44
mov esi, dword [ebp - 0x18c]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
je 0x44df78
mov eax, dword [ebx + 0x10]
test ah, 1
je 0x44df70
mov edx, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
mov edi, ecx
or edi, edx
je 0x44df70
mov esi, dword [ebx + 0x40]
cmp esi, 0x464240
je 0x44df70
test eax, 0x200000
je 0x44df70
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x20]
cmp dword [eax + 0x70], ebx
je 0x44df70
cmp dword [eax + 0x100], ebx
je 0x44df70
mov edi, dword [esi + 0x94]
cmp dword [edi + 4], 3
jne 0x44df3c
mov eax, dword [ebx]
mov dword [esp + 4], str..dynstr
mov dword [esp], eax
mov dword [ebp - 0x1d8], edx
mov dword [ebp - 0x1dc], ecx
call sub.msvcrt.dll_strcmp
test eax, eax
mov edx, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1dc]
je 0x44e113
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ecx
mov eax, dword [ebx + 0x38]
mov edx, dword [ebx + 0x3c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebx + 0x74]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0040324c
test eax, eax
je 0x44af44
mov ebx, dword [ebx + 0xc]
jmp 0x44dead
mov edi, dword [ebp + 0xc]
test byte [edi], 1
jne 0x44e0e3
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x20]
cmp dword [eax + 0x70], 0
je 0x44dfaa
add eax, 0x5c
mov dword [esp + 4], eax
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.0045ab38
test eax, eax
je 0x44af44
mov ebx, dword [ebp + 0xc]
test byte [ebx + 2], 4
jne 0x44e0c7
mov eax, dword [ebp - 0x10c]
test eax, eax
je 0x44dfc9
mov dword [esp], eax
call fcn.0040644c
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x44dfdb
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x44dfed
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x44dfff
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x44e011
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xec]
test eax, eax
je 0x44e023
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x44e035
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x44e047
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x44e059
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x44e06b
mov dword [esp], eax
call fcn.00463c40
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x44e07d
mov dword [esp], eax
call fcn.00463c40
mov edi, dword [ebp + 8]
mov ebx, dword [edi + 0x6c]
test ebx, ebx
je 0x44e0aa
test byte [ebx + 0x10], 4
je 0x44e0a5
mov eax, dword [ebx + 0x94]
mov eax, dword [eax + 0xb0]
test eax, eax
je 0x44e0a5
mov dword [esp], eax
call fcn.00463c40
mov ebx, dword [ebx + 0xc]
jmp 0x44e083
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb0]
mov dword [eax + 0x3ac], 1
mov edi, 1
jmp 0x44ac30
mov dword [esp + 4], ebx
mov esi, dword [ebp + 8]
mov dword [esp], esi
call fcn.004521a4
test eax, eax
je 0x44af44
jmp 0x44dfb7
mov dword [ebp - 0x1c], 0
lea eax, [ebp - 0x1c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x43507c
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00403178
cmp dword [ebp - 0x1c], 0
jne 0x44af44
jmp 0x44df84
mov dword [esp + 0xc], 0
mov eax, dword [edi + 0x30]
mov edx, dword [edi + 0x34]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.00408268
test eax, eax
jne 0x44af44
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x20]
mov eax, dword [eax + 0x40]
mov dword [esp + 4], eax
mov esi, dword [ebp + 8]
mov dword [esp], esi
call fcn.00457ff0
test eax, eax
jne 0x44df70
jmp 0x44af44
mov eax, dword [esi + 0x18]
mov ebx, dword [eax + 0x74]
test ebx, ebx
je 0x44e30b
mov edx, dword [eax + 0x28]
add edx, ebx
mov dword [ebp - 0x120], edx
mov ecx, dword [ebp - 0x130]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e2a0
mov edx, edi
imul edx, eax
add edx, dword [ebp - 0x128]
mov dword [ebp - 0x168], ebx
mov eax, dword [ebp - 0x168]
cmp dword [ebp - 0x120], eax
jbe 0x44de26
lea eax, [edx + 0x10]
mov dword [esp + 8], eax
mov ebx, dword [ebp - 0x168]
mov dword [esp + 4], ebx
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x1d8], edx
call dword [ebp - 0x144]
mov eax, dword [ebp - 0x1dc]
mov dword [esp], eax
mov ebx, dword [ebp - 0x154]
call dword [ebx + 0xd0]
mov edx, dword [ebp - 0x1d8]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x140]
mov ebx, dword [ebp - 0x13c]
mov dword [edx], ecx
mov dword [edx + 4], ebx
add edx, edi
mov ebx, dword [ebp - 0x130]
add dword [ebp - 0x168], ebx
jmp 0x44e1af
mov ebx, dword [ebp - 0x160]
mov dword [esp + 0xc], 0x4412a8
mov dword [esp + 8], edi
mov edx, dword [ebp - 0x134]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x128]
mov dword [esp], ecx
call sub.msvcrt.dll_qsort
mov esi, dword [ebp - 0x128]
mov dword [ebp - 0x120], 0
cmp dword [ebp - 0x148], 0
ja 0x44e3f6
mov eax, dword [ebp - 0x120]
cmp dword [ebp - 0x134], eax
ja 0x44e3f6
mov edx, esi
mov ecx, esi
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x160], esi
mov dword [ebp - 0x154], ebx
cmp dword [ebp - 0x148], 0
ja 0x44e3c0
mov esi, dword [ebp - 0x144]
cmp dword [ebp - 0x134], esi
ja 0x44e3c0
mov esi, dword [ebp - 0x160]
mov ebx, dword [ebp - 0x154]
mov dword [esp + 0xc], 0x441330
mov dword [esp + 8], edi
mov eax, dword [ebp - 0x134]
sub eax, dword [ebp - 0x120]
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.msvcrt.dll_qsort
mov esi, dword [ebx + 0xa8]
mov dword [ebp - 0x140], ebx
test esi, esi
je 0x44e3a7
cmp dword [esi + 4], 1
je 0x44e334
mov esi, dword [esi]
jmp 0x44e2f9
mov edx, dword [eax + 0x2c]
or edx, dword [eax + 0x28]
je 0x44e16f
mov esi, dword [ebp - 0x128]
mov dword [esp], esi
call fcn.00463c40
mov dword [ebp - 0x120], 0
jmp 0x44d8f6
mov eax, dword [esi + 0x18]
mov ebx, dword [eax + 0x74]
mov edx, dword [eax + 0x28]
add edx, ebx
mov dword [ebp - 0x134], edx
mov ecx, dword [ebp - 0x130]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e2a0
imul eax, edi
add eax, dword [ebp - 0x128]
cmp dword [ebp - 0x134], ebx
jbe 0x44e307
mov dword [esp + 8], ebx
lea edx, [eax + 0x10]
mov dword [esp + 4], edx
mov edx, dword [ebp + 8]
mov dword [esp], edx
mov dword [ebp - 0x1dc], eax
call dword [ebp - 0x150]
mov eax, dword [ebp - 0x1dc]
add eax, edi
add ebx, dword [ebp - 0x130]
jmp 0x44e372
mov ebx, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x128]
mov dword [esp], ecx
call fcn.00463c40
jmp 0x44d8f6
mov eax, dword [edx + 0x18]
xor eax, dword [ecx + 0x18]
mov esi, dword [edx + 0x1c]
xor esi, dword [ecx + 0x1c]
and eax, dword [ebp - 0x140]
and esi, dword [ebp - 0x13c]
or esi, eax
je 0x44e3de
mov edx, ecx
mov ebx, dword [edx + 0x10]
mov esi, dword [edx + 0x14]
mov dword [ecx], ebx
mov dword [ecx + 4], esi
inc dword [ebp - 0x144]
add ecx, edi
jmp 0x44e29e
cmp dword [esi + 8], 1
jne 0x44e282
inc dword [ebp - 0x120]
add esi, edi
jmp 0x44e263
mov dword [ebp - 0x40], 0x6ffffffa
mov dword [ebp - 0x3c], 0
mov edi, dword [ebp - 0x120]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x120], 0
jmp 0x44da62
mov dword [ebp - 0x40], 0x6ffffff9
mov dword [ebp - 0x3c], 0
jmp 0x44e41b
mov ecx, eax
xor ecx, 0xd
or ecx, edx
jne 0x44da7f
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x44]
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x20]
mov dword [esp], eax
call fcn.0041ac08
test eax, eax
je 0x44da7f
mov edx, dword [eax + 0xc]
sub edx, 3
cmp edx, 1
ja 0x44da7f
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0x40]
test edx, edx
je 0x44e4f4
mov ecx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
add edx, dword [ebp - 0x130]
adc ecx, dword [ebp - 0x12c]
add edx, dword [eax + 0x38]
adc ecx, dword [eax + 0x3c]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebx + 0x114]
jmp 0x44da62
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x40]
jmp 0x44e45d
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov eax, dword [ebx + 0x114]
jmp 0x44da62
mov edi, dword [ebx]
mov esi, 2
test byte [ebx + 0x11], 0x20
je 0x44e73c
imul edx, dword [ebx + 0x50], 0x18
mov ecx, dword [ebp - 0x134]
mov eax, dword [ecx + 0x114]
movzx eax, byte [eax + 9]
imul edx, eax
add edx, dword [ebp - 0x160]
mov dword [ebp - 0x168], edx
mov edi, dword [ebp - 0x160]
mov dword [ebp - 0x148], edi
mov eax, esi
and eax, 1
mov dword [ebp - 0x178], eax
and esi, 2
mov dword [ebp - 0x194], esi
jmp 0x44e5eb
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx + 0xb0]
cmp dword [edx + 0x3b0], 0
je 0x44e58b
mov edx, dword [ebp - 0xe0]
cmp dword [edx + eax*4], 0
je 0x44e631
lea edx, [eax*4]
add edx, dword [ebp - 0xe0]
shl eax, 5
add eax, dword [ebp - 0x140]
mov dword [esp + 8], eax
mov esi, dword [ebp - 0x1b8]
mov dword [esp + 4], esi
mov edi, dword [ebp - 0x120]
mov dword [esp], edi
mov dword [ebp - 0x1d8], edx
call fcn.00435eb0
mov edx, dword [ebp - 0x1d8]
mov esi, dword [edx]
test esi, esi
je 0x44e5e4
cmp esi, 0x464240
je 0x44e5e4
cmp dword [esi + 0x40], 0x464240
je 0x44e7a5
add dword [ebp - 0x148], 0x18
mov edx, dword [ebp - 0x148]
cmp dword [ebp - 0x168], edx
jbe 0x44ca54
mov edx, dword [ebp - 0x148]
mov esi, dword [edx + 8]
mov edi, dword [edx + 0xc]
mov eax, esi
mov edx, edi
mov cl, byte [ebp - 0x188]
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
je 0x44e621
mov eax, edx
xor edx, edx
test eax, eax
je 0x44e5e4
cmp dword [ebp - 0x16c], eax
ja 0x44e566
sub eax, dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x1cc]
mov eax, dword [edx + eax*4]
test eax, eax
jne 0x44e649
jmp 0x44e667
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
lea ecx, [edx - 6]
cmp ecx, 1
jbe 0x44e646
sub edx, 3
cmp edx, 1
ja 0x44e5e4
lea edx, [eax + 0x14]
mov eax, dword [eax + 4]
jmp 0x44e5c9
mov edx, ebx
mov ebx, esi
mov dword [esp + 0xc], ebx
mov dword [esp + 8], edi
mov dword [esp + 4], str._08lx_08lx
lea ebx, [ebp - 0x80]
mov dword [esp], ebx
mov dword [ebp - 0x1d8], edx
call fcn.00441f64
mov dword [esp + 0xc], ebx
mov edx, dword [ebp - 0x1d8]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x120]
mov dword [esp + 4], ecx
mov dword [esp], str.error:__B_contains_a_reloc__0x_s__for_section__A_that_references_a_non_existent_global_symbol
call dword [0x4643d0]
mov dword [esp], 0x10
call fcn.00404d18
jmp 0x44af44
mov dword [esp + 0xc], 0
mov edi, dword [ebp - 0x120]
mov eax, dword [edi + 0x138]
mov edx, dword [edi + 0x13c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], esi
call fcn.00408268
xor edi, edi
test eax, eax
jne 0x44ac30
mov eax, dword [ebp - 0x10c]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004065e8
test eax, eax
jne 0x44d542
jmp 0x44ac30
mov eax, dword [esi + 0x114]
movzx ecx, byte [eax + 4]
mov dword [ebp - 0x130], ecx
mov edi, dword [eax + 0x3c]
mov dword [ebp - 0x144], edi
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x150], eax
jmp 0x44d88f
mov dword [esp + 4], edi
mov dword [esp], 0x4773db
call sub.msvcrt.dll_strcmp
xor esi, esi
test eax, eax
je 0x44e51e
mov dword [esp + 4], edi
mov dword [esp], str..gcc_except_table
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x44e51e
mov dword [esp + 4], edi
mov dword [esp], str..PARISC.unwind
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x44e51e
mov dword [esp + 4], edi
mov dword [esp], str..fixup
call sub.msvcrt.dll_strcmp
cmp eax, 1
sbb esi, esi
not esi
and esi, 3
jmp 0x44e51e
mov cl, byte [esi + 0x14]
and ecx, 0xffffffe0
cmp cl, 0x40
je 0x44e5e4
cmp cl, 0x80
je 0x44e5e4
cmp dword [ebp - 0x178], 0
je 0x44e7ff
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x9c]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov eax, dword [ebp - 0x120]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], str.__s_referenced_in_section___A_of__B:_defined_in_discarded_section___A_of__B_n
mov dword [ebp - 0x1d8], edx
call dword [0x4643d0]
mov edx, dword [ebp - 0x1d8]
mov edi, dword [esi + 0x84]
test edi, edi
je 0x44e858
cmp dword [ebp - 0x194], 0
je 0x44e858
mov eax, dword [esi + 0x94]
cmp dword [eax + 0xc4], 0
je 0x44e84d
mov eax, dword [edi + 0x94]
mov edi, dword [eax + 0xc8]
test edi, edi
je 0x44e858
mov dword [esp + 4], esi
mov dword [esp], edi
mov dword [ebp - 0x1d8], edx
call fcn.00440c00
test eax, eax
mov edx, dword [ebp - 0x1d8]
je 0x44e858
mov eax, dword [esi + 0x28]
mov ecx, dword [edi + 0x2c]
cmp dword [esi + 0x2c], ecx
je 0x44e883
mov edi, dword [ebp - 0x180]
mov esi, dword [ebp - 0x148]
and dword [esi + 8], edi
mov eax, dword [ebp - 0x17c]
and dword [esi + 0xc], eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
jmp 0x44e5e4
cmp eax, dword [edi + 0x28]
jne 0x44e858
mov dword [edx], edi
jmp 0x44e5e4