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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x1cc
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [edx + 0x90]
mov ebx, dword [ebx + 4]
mov dword [ebp - 0x128], ebx
mov dword [ebp - 0x12c], 0
mov ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x120], eax
mov eax, dword [ebx + 0x90]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x130], eax
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x178]
mov esi, dword [edx + 0x34]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x13c], esi
mov edi, dword [eax + 0x34]
mov dword [ebp - 0x144], edx
mov dword [ebp - 0x140], edi
cmp edx, dword [eax + 0x40]
je 0x603e82c2
push ebx
push ebx
push 0x57a
push 0x603e6800
call sym.exchndl.dll_bfd_assert
add esp, 0x10
mov edx, dword [ebp + 8]
mov dword [ebp - 0x134], 0
mov eax, dword [edx]
test byte [eax + 1], 0x20
jne 0x603e82e1
mov dword [ebp - 0x134], 1
mov ecx, dword [ebp - 0x128]
test byte [ecx + 0x39], 4
mov ecx, dword [ebp + 0xc]
setne al
and eax, 0xff
sub esp, 0xc
dec eax
and eax, 1
push ecx
mov dword [ebp - 0x138], eax
call sym.exchndl.dll__bfd_coff_get_external_symbols
add esp, 0x10
mov dword [ebp - 0x118], 0
test eax, eax
je 0x603e8769
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x13c]
mov ecx, dword [ebp + 8]
mov eax, dword [ebx + 0x90]
mov ebx, dword [ebp - 0x130]
mov ecx, dword [ecx + 0x64]
mov dword [ebp - 0x15c], ebx
mov edx, dword [eax + 0x14]
mov esi, dword [eax + 0x38]
imul edi, edx
mov eax, edi
mov dword [ebp - 0x148], esi
add eax, esi
mov edx, dword [ebp + 8]
mov dword [ebp - 0x14c], eax
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov edx, dword [edx + 0x60]
mov esi, dword [esi + 0x68]
mov edi, dword [ebp - 0x128]
mov eax, dword [eax + 0x5c]
mov dword [ebp - 0x154], edx
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x158], ecx
mov dword [ebp - 0x160], esi
mov eax, dword [edi + 0x90]
mov eax, dword [eax + 0x4c]
test eax, eax
jne 0x603e9fa7
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov edx, dword [eax + 4]
test edx, edx
jne 0x603e83ab
cmp dword [eax + 8], 1
je 0x603e83df
test byte [eax], 1
je 0x603e83df
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x158]
cld
mov eax, dword [ecx + 0x90]
mov ecx, dword [eax + 0x14]
xor eax, eax
shl ecx, 2
shr ecx, 2
rep stosd dword es:[edi], eax
mov edi, dword [ebp + 8]
push eax
push eax
mov eax, dword [ebp + 0xc]
push eax
push edi
call fcn.603e8110
add esp, 0x10
mov ebx, dword [ebp - 0x14c]
cmp dword [ebp - 0x148], ebx
jae 0x603e85d3
mov ebx, dword [ebp - 0x150]
push esi
mov ecx, dword [ebp - 0x148]
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x178]
push ebx
push ecx
push esi
call dword [eax + 4]
mov edi, dword [ebp - 0x150]
mov eax, dword [edi]
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x34], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x28], eax
pop eax
mov eax, dword [esi + 4]
pop edx
lea edx, [ebp - 0x38]
mov eax, dword [eax + 0x178]
push edx
push esi
call dword [eax + 0x98]
add esp, 0x10
mov ebx, eax
cmp eax, 4
ja case.default.0x603e8457
jmp dword [eax*4 + 0x603e8460]
mov esi, dword [ebp - 0x154]
mov dword [esi], sym.exchndl.dll_bfd_com_section
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 0x1d0], eax
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x603e849c
cmp dword [eax + 8], 1
je 0x603e9f5a
mov edx, dword [ebp - 0x1d0]
test byte [edx], 1
je 0x603e9f5a
mov ecx, dword [ebp - 0x158]
mov ecx, dword [ecx]
mov dword [ebp - 0x170], ecx
mov esi, dword [ebp - 0x158]
mov edi, dword [ebp - 0x1d0]
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x16c], 0
mov dword [esi], 0xffffffff
movzx esi, byte [ebp - 0x25]
mov eax, esi
and eax, 0xff
inc eax
mov dword [ebp - 0x1cc], eax
cmp dword [edi + 4], 3
je 0x603e9f47
cmp ebx, 4
ja case.default.0x603e8504
jmp dword [ebx*4 + 0x603e850c]
mov ecx, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x13c]
imul eax, ecx
mov esi, dword [ebp - 0x1cc]
mov edx, dword [ebp - 0x148]
add edx, eax
mov edi, dword [ebp - 0x150]
lea eax, [esi + esi*4]
mov dword [ebp - 0x148], edx
dec esi
lea edi, [edi + eax*4]
mov dword [ebp - 0x1cc], esi
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x150], edi
add eax, 4
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x158]
add eax, 4
test esi, esi
mov dword [ebp - 0x158], eax
jle 0x603e85c1
mov esi, esi
mov edi, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x154]
mov edx, dword [ebp - 0x158]
dec edi
mov dword [ebp - 0x1cc], edi
mov dword [eax], 0
mov dword [edx], 0xffffffff
mov esi, dword [ebp - 0x1cc]
add eax, 4
add edx, 4
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x158], edx
test esi, esi
jg 0x603e8580
mov ecx, dword [ebp - 0x14c]
cmp dword [ebp - 0x148], ecx
jb 0x603e83f1
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x13c]
mov edi, dword [ebp + 8]
mov edx, dword [ebx + 0x90]
mov edi, dword [edi + 0x5c]
mov ebx, dword [edx + 0x14]
mov esi, dword [edx + 0x38]
imul eax, ebx
mov edx, dword [edx + 0x50]
add eax, esi
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x164], edx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 8]
mov ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x148], esi
mov eax, dword [eax + 0x64]
mov edx, dword [edx + 0x68]
mov dword [ebp - 0x150], edi
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x160], edx
cmp esi, ecx
jae 0x603e86e6
mov ebx, dword [ebp - 0x150]
xor eax, eax
mov esi, dword [ebp - 0x158]
mov cl, byte [ebx + 0x13]
mov al, cl
mov bl, cl
inc eax
mov dword [ebp - 0x190], eax
mov eax, dword [esi]
test eax, eax
js 0x603e8662
cmp eax, dword [ebp - 0x130]
jae 0x603e8fa2
mov edi, dword [ebp - 0x164]
mov edx, dword [edi]
test edx, edx
je 0x603e867a
mov esi, dword [ebp + 0xc]
cmp dword [edx + 0x24], esi
je 0x603e8fa2
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x13c]
imul eax, ecx
mov edx, dword [ebp - 0x148]
add edx, eax
mov dword [ebp - 0x148], edx
mov eax, dword [ebp - 0x190]
mov esi, dword [ebp - 0x190]
shl eax, 2
mov edi, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x158]
lea edx, [esi + eax]
add ecx, eax
mov dword [ebp - 0x158], ecx
lea edi, [edi + edx*4]
mov edx, dword [ebp - 0x164]
add edx, eax
mov dword [ebp - 0x150], edi
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x164], edx
cmp dword [ebp - 0x148], eax
jb 0x603e8634
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov eax, dword [eax + 4]
test eax, eax
je 0x603e8c61
cmp eax, 2
je 0x603e8c61
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x18]
cmp ecx, 0xffffffff
je 0x603e8716
cmp ecx, dword [ebp - 0x130]
jae 0x603e8c1f
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x68]
cmp dword [ebp - 0x160], edx
ja 0x603e8b4d
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
mov esi, dword [edi + 0x54]
test esi, esi
mov eax, dword [eax + 0x178]
mov eax, dword [eax + 0xac]
mov dword [ebp - 0x124], eax
je 0x603e8754
test byte [esi + 0x14], 4
jne 0x603e8796
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x603e8747
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
test byte [eax + 1], 0x20
je 0x603e8777
mov dword [ebp - 0x118], 1
mov eax, dword [ebp - 0x118]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
sub esp, 0xc
mov ecx, dword [ebp + 0xc]
push ecx
call sym.exchndl.dll__bfd_coff_free_symbols
add esp, 0x10
mov dword [ebp - 0x118], 0
test eax, eax
je 0x603e8769
jmp 0x603e875f
mov edx, dword [esi + 0x10]
test dh, 2
je 0x603e87aa
mov eax, dword [esi + 0x24]
test eax, eax
jne 0x603e87ed
test dl, 4
jne 0x603e87ed
and edx, 4
je 0x603e874d
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x603e874d
mov ebx, dword [ebp + 0xc]
push eax
mov edi, dword [esi]
push edi
push esi
push ebx
call sym.exchndl.dll_bfd_archive_filename
pop edx
pop ecx
push eax
push 0x603e81d0
call dword [sym.exchndl.dll__bfd_error_handler]
mov dword [esp], 0xd
call sym.exchndl.dll_bfd_set_error
mov dword [ebp - 0x118], 0
jmp 0x603e8769
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x603e8807
mov eax, dword [eax + 8]
mov dword [ebp - 0x1ac], eax
test eax, eax
jne 0x603e8845
sub esp, 0xc
mov eax, dword [esi + 0x24]
mov edx, dword [ebp + 8]
push eax
push 0
mov eax, dword [edx + 0x70]
push eax
mov eax, dword [ebp + 0xc]
push esi
push eax
call sym.exchndl.dll_bfd_get_section_contents
mov dword [ebp - 0x118], 0
add esp, 0x20
test eax, eax
je 0x603e8769
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x10]
mov ecx, dword [ecx + 0x70]
mov dword [ebp - 0x1ac], ecx
and edx, 4
je 0x603e89ea
mov edx, dword [esi + 0x2c]
mov edi, dword [ebp + 8]
mov ebx, dword [edx + 0x68]
push eax
push eax
mov dword [ebp - 0x1b4], ebx
mov ecx, dword [edi]
test byte [ecx], 1
je 0x603e8b42
mov eax, dword [edi + 0x14]
mov edx, dword [edx + 0x3c]
shl edx, 4
mov edi, dword [eax + ebx*8]
add edx, edi
push edx
xor eax, eax
mov al, byte [ecx]
mov edx, dword [ebp + 8]
and eax, 1
mov ecx, dword [ebp + 0xc]
push eax
mov ebx, dword [edx + 0x74]
push ebx
push 0
push esi
push ecx
call sym.exchndl.dll__bfd_coff_read_internal_relocs
mov dword [ebp - 0x118], 0
add esp, 0x20
mov ebx, eax
test eax, eax
je 0x603e8769
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov eax, dword [ecx + 4]
mov edx, dword [edi + 0x60]
mov eax, dword [eax + 0x178]
push edx
mov edx, dword [edi + 0x5c]
push edx
mov edx, dword [ebp - 0x1ac]
push ebx
push edx
push esi
mov edx, dword [ebp - 0x128]
push ecx
mov ecx, dword [edi]
push ecx
push edx
call dword [eax + 0xa4]
mov dword [ebp - 0x118], 0
add esp, 0x20
test eax, eax
je 0x603e8769
mov eax, dword [edi]
test byte [eax], 1
je 0x603e89ea
mov ecx, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
mov edi, dword [esi + 0x18]
mov edx, dword [ecx + 0x18]
add eax, edx
mov edx, dword [ebp + 8]
sub eax, edi
mov edi, dword [esi + 0x3c]
mov dword [ebp - 0x1b8], eax
mov eax, edi
shl eax, 4
lea eax, [eax + ebx]
mov dword [ebp - 0x1bc], eax
mov eax, dword [edx + 0x14]
mov edx, dword [ebp - 0x1b4]
cmp ebx, dword [ebp - 0x1bc]
mov eax, dword [eax + edx*8 + 4]
mov edx, dword [ecx + 0x3c]
lea eax, [eax + edx*4]
mov dword [ebp - 0x1c0], eax
jae 0x603e89e2
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x1c0]
mov edi, dword [ebp - 0x1b8]
mov edx, dword [ebx + 4]
add eax, edi
mov dword [ecx], 0
mov dword [ebx], eax
cmp edx, 0xffffffff
je 0x603e89be
mov eax, dword [ebp - 0x124]
test eax, eax
je 0x603e8a92
mov edi, dword [ebp - 0x128]
push eax
push eax
lea eax, [ebp - 0x114]
push eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push eax
push edi
call dword [ebp - 0x124]
mov dword [ebp - 0x118], 0
add esp, 0x20
test eax, eax
je 0x603e8769
mov ecx, dword [ebp - 0x114]
test ecx, ecx
je 0x603e8a8f
mov ecx, dword [ebp - 0x1c0]
add ebx, 0x10
add ecx, 4
cmp ebx, dword [ebp - 0x1bc]
mov dword [ebp - 0x1c0], ecx
jb 0x603e894b
mov ecx, dword [esi + 0x2c]
mov edi, dword [esi + 0x3c]
mov edx, dword [ecx + 0x3c]
add edx, edi
mov dword [ecx + 0x3c], edx
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x603e8a01
mov eax, dword [ebp - 0x1b0]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x603e8a60
sub esp, 0xc
mov eax, dword [ebp - 0x128]
push eax
call sym.exchndl.dll_bfd_octets_per_byte
mov edx, dword [esi + 0x28]
add esp, 0x10
imul edx, eax
mov eax, dword [esi + 0x20]
test eax, eax
jne 0x603e8a23
mov eax, dword [esi + 0x24]
sub esp, 0xc
push eax
mov eax, dword [ebp - 0x1ac]
push edx
push eax
mov eax, dword [esi + 0x2c]
push eax
mov eax, dword [ebp - 0x128]
push eax
call sym.exchndl.dll_bfd_set_section_contents
add esp, 0x20
mov dword [ebp - 0x118], 0
test eax, eax
jne 0x603e874d
jmp 0x603e8769
sub esp, 0xc
mov eax, dword [ebp - 0x1b0]
add eax, 0x20
mov edi, dword [ebp - 0x1ac]
mov edx, dword [ebp + 8]
push edi
push eax
mov ebx, dword [ebp - 0x128]
push esi
mov eax, dword [edx]
mov eax, dword [eax + 0x14]
add eax, 0x20
push eax
push ebx
call sym.exchndl.dll__bfd_write_section_stabs
jmp 0x603e8a3f
mov edx, dword [ebx + 4]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x90]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + edx*4]
test eax, eax
je 0x603e8ac8
mov edx, dword [eax + 0x1c]
test edx, edx
js 0x603e8ab4
mov dword [ebx + 4], edx
jmp 0x603e89be
mov edi, dword [ebp - 0x1c0]
mov dword [eax + 0x1c], 0xfffffffe
mov dword [edi], eax
jmp 0x603e89be
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x64]
mov eax, dword [eax + edx*4]
cmp eax, 0xffffffff
je 0x603e8ade
mov dword [ebx + 4], eax
jmp 0x603e89be
mov edi, dword [ebp + 8]
lea eax, [edx + edx*4]
mov edx, dword [edi + 0x5c]
lea eax, [edx + eax*4]
push edx
lea edx, [ebp - 0x108]
push edx
push eax
mov eax, dword [ebp + 0xc]
push eax
call sym.exchndl.dll__bfd_coff_internal_syment_name
add esp, 0x10
mov dword [ebp - 0x118], 0
mov ecx, eax
test eax, eax
je 0x603e8769
mov eax, dword [edi]
sub esp, 0xc
mov edi, dword [ebx]
mov edx, dword [eax + 0x10]
push edi
mov edi, dword [ebp + 0xc]
push esi
push edi
push ecx
push eax
call dword [edx + 0x24]
add esp, 0x20
mov dword [ebp - 0x118], 0
test eax, eax
jne 0x603e89be
jmp 0x603e8769
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x78]
jmp 0x603e8878
mov ebx, dword [ebp - 0x130]
mov esi, dword [ebp - 0x140]
imul ebx, esi
mov ecx, dword [ebp - 0x128]
mov eax, dword [ecx + 0x90]
mov esi, dword [eax + 0xc]
add ebx, esi
push eax
mov dword [ebp - 0x130], ebx
push 0
mov ebx, dword [ebp - 0x160]
mov eax, dword [ebp - 0x130]
push eax
sub ebx, edx
push ecx
call sym.exchndl.dll_bfd_seek
add esp, 0x10
test eax, eax
jne 0x603e87de
mov edi, dword [ebp - 0x128]
push eax
push edi
mov edi, dword [ebp + 8]
push ebx
mov esi, dword [edi + 0x68]
push esi
call sym.exchndl.dll_bfd_bwrite
add esp, 0x10
cmp eax, ebx
jne 0x603e87de
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x128]
mov ebx, dword [ebp - 0x160]
mov edx, dword [edx + 0x68]
mov ecx, dword [eax + 0x90]
sub ebx, edx
xor edx, edx
mov dword [ebp - 0x160], ebx
mov eax, dword [ebp - 0x160]
div dword [ebp - 0x140]
mov edx, dword [ecx + 0x14]
add eax, edx
cmp eax, dword [ebp - 0x15c]
je 0x603e8c11
push eax
push eax
push 0x8ff
push 0x603e6800
call sym.exchndl.dll_bfd_assert
mov ebx, dword [ebp - 0x128]
add esp, 0x10
mov ecx, dword [ebx + 0x90]
mov esi, dword [ebp - 0x15c]
mov dword [ecx + 0x14], esi
jmp 0x603e8728
mov edi, dword [ebp - 0x128]
mov esi, dword [ebp - 0x15c]
mov dword [ebx + 0x24], esi
push eax
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebp - 0x130]
sub ecx, eax
mov eax, dword [ebp - 0x140]
imul ecx, eax
mov eax, dword [ebx + 0x68]
add ecx, eax
mov eax, ebx
add eax, 0x1c
push ecx
push eax
push edi
call dword [edx + 0x10]
add esp, 0x10
jmp 0x603e8716
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx + 0x54]
test esi, esi
je 0x603e86ff
nop
mov eax, dword [esi + 0x58]
test eax, eax
jne 0x603e8c83
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x603e8c70
jmp 0x603e86ff
mov eax, dword [esi + 0x2c]
test byte [eax + 0x11], 2
je 0x603e8c77
push eax
push 0
mov eax, dword [esi + 0x48]
push eax
mov eax, dword [ebp + 0xc]
push eax
call sym.exchndl.dll_bfd_seek
add esp, 0x10
test eax, eax
jne 0x603e87de
mov edi, dword [ebp + 0xc]
push eax
mov eax, dword [ebp - 0x144]
push edi
mov ebx, dword [esi + 0x58]
imul eax, ebx
mov ebx, dword [ebp + 8]
push eax
mov ecx, dword [ebx + 0x6c]
push ecx
call sym.exchndl.dll_bfd_bread
mov edx, dword [esi + 0x58]
mov ebx, eax
mov eax, dword [ebp - 0x144]
add esp, 0x10
imul eax, edx
cmp ebx, eax
jne 0x603e87de
mov ecx, dword [esi + 0x2c]
mov edi, dword [esi + 0x28]
mov edx, dword [esi + 0x18]
mov eax, dword [ecx + 0x18]
add edi, eax
sub edi, edx
mov dword [ebp - 0x198], edi
mov edi, dword [ebp + 8]
mov edi, dword [edi + 0x6c]
add ebx, edi
mov dword [ebp - 0x1a0], edi
mov dword [ebp - 0x19c], ebx
mov edx, edi
mov eax, dword [ebp - 0x19c]
xor ebx, ebx
cmp edi, eax
jae 0x603e8d75
mov edx, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x110]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x178]
push ecx
push edi
push edx
call dword [eax + 8]
mov eax, dword [ebp - 0x10c]
add esp, 0x10
test eax, eax
je 0x603e8e21
mov ecx, dword [ebp - 0x110]
mov eax, dword [ebp - 0x198]
add ecx, eax
mov dword [ebp - 0x110], ecx
test ebx, ebx
je 0x603e8de3
mov eax, dword [ebp - 0x144]
add edi, eax
cmp edi, dword [ebp - 0x19c]
jb 0x603e8d16
mov ebx, dword [ebp + 8]
mov ecx, dword [esi + 0x2c]
mov edx, dword [ebx + 0x6c]
mov edi, dword [ecx + 0x58]
mov eax, dword [ebp - 0x144]
imul eax, edi
mov ebx, dword [ecx + 0x48]
mov edi, dword [ebp - 0x128]
add eax, ebx
mov ebx, dword [ebp - 0x1a0]
sub ebx, edx
push edx
push 0
push eax
push edi
call sym.exchndl.dll_bfd_seek
add esp, 0x10
test eax, eax
jne 0x603e87de
mov edx, dword [ebp - 0x128]
mov edi, dword [ebp + 8]
push ecx
push edx
push ebx
mov eax, dword [edi + 0x6c]
push eax
call sym.exchndl.dll_bfd_bwrite
add esp, 0x10
cmp eax, ebx
jne 0x603e87de
mov ebx, dword [esi + 0x2c]
xor edx, edx
div dword [ebp - 0x144]
mov edi, eax
mov eax, dword [ebx + 0x58]
add eax, edi
mov dword [ebx + 0x58], eax
jmp 0x603e8c77
mov edx, dword [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x178]
push ecx
lea ecx, [ebp - 0x110]
push ecx
push edx
call dword [eax + 0x14]
add esp, 0x10
mov edx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x144]
add edx, eax
mov dword [ebp - 0x1a0], edx
jmp 0x603e8d5c
mov edx, dword [ebp - 0x110]
test edx, edx
js 0x603e8d54
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x90]
cmp edx, dword [eax + 0x14]
jae 0x603e8d54
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x64]
mov ebx, 1
mov edx, dword [eax + edx*4]
mov dword [ebp - 0x1a4], edx
test edx, edx
js 0x603e8ed2
mov ebx, dword [ebp - 0x1a4]
push edx
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x128]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x178]
lea eax, [ebp - 0xe8]
push eax
mov eax, dword [ebp - 0x130]
sub ebx, eax
mov eax, dword [ebp - 0x140]
imul eax, ebx
add eax, dword [ecx + 0x68]
push eax
mov eax, dword [ebp - 0x128]
push eax
call dword [edx + 4]
mov eax, dword [ebp - 0xd8]
mov cl, byte [ebp - 0x120]
and eax, 0xffff
add esp, 0x10
mov edx, eax
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x11c]
and edx, eax
mov eax, 2
shl eax, cl
cmp edx, eax
je 0x603e8ee3
cmp byte [ebp - 0xd6], 0x64
je 0x603e8ee3
xor ebx, ebx
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x110], eax
jmp 0x603e8d54
mov cl, byte [ebp - 0xd5]
test cl, cl
je 0x603e8ed0
mov eax, dword [ebp - 0x140]
inc ebx
imul ebx, eax
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x68]
add ebx, edx
push eax
mov edx, dword [ebp - 0x128]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x178]
lea eax, [ebp - 0x108]
push eax
xor eax, eax
mov al, cl
push eax
xor eax, eax
mov al, byte [ebp - 0xd6]
push 0
push eax
mov eax, dword [ebp - 0x1a8]
push eax
mov eax, dword [ebp - 0x128]
push ebx
push eax
call dword [edx]
add esp, 0x1c
mov edx, dword [esi + 0x2c]
mov eax, dword [ebp - 0x144]
mov ecx, dword [edx + 0x58]
imul eax, ecx
mov ecx, dword [edx + 0x48]
mov edx, dword [ebp + 8]
add eax, ecx
mov ecx, dword [edx + 0x6c]
lea eax, [eax + edi]
sub eax, ecx
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x100], eax
mov eax, dword [ecx + 4]
mov edx, dword [eax + 0x178]
xor eax, eax
mov al, byte [ebp - 0xd5]
push ebx
push eax
lea ebx, [ebp - 0x108]
xor eax, eax
push 0
mov al, byte [ebp - 0xd6]
push eax
mov eax, dword [ebp - 0xd8]
and eax, 0xffff
push eax
push ebx
push ecx
call dword [edx + 0xc]
add esp, 0x20
jmp 0x603e8ed0
xor edi, edi
test eax, eax
js 0x603e94a2
mov eax, dword [ebp - 0x148]
mov ebx, dword [ebp - 0x13c]
add eax, ebx
test edi, edi
mov dword [ebp - 0x148], eax
je 0x603e9489
mov dword [ebp - 0x194], 0
test cl, cl
je 0x603e8697
mov eax, dword [ebp - 0x14c]
cmp dword [ebp - 0x148], eax
jae 0x603e8697
mov dword [ebp - 0x1c4], 0
test edi, edi
je 0x603e943e
mov ebx, dword [ebp - 0x1c4]
mov esi, dword [edi + 0x28]
add ebx, esi
mov eax, dword [ebp - 0x150]
mov al, byte [eax + 0x12]
mov byte [ebp - 0x1d0], al
cmp al, 0x67
je 0x603e9392
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx + 0x10]
and eax, 0xffffff
cmp eax, 0x30000
je 0x603e9144
mov dx, word [ecx + 0x10]
mov esi, dword [ebp - 0x11c]
and edx, 0xffff
mov eax, 2
mov cl, byte [ebp - 0x120]
and edx, esi
shl eax, cl
cmp edx, eax
je 0x603e9340
cmp byte [ebp - 0x1d0], 0xa
je 0x603e9340
cmp byte [ebp - 0x1d0], 0xc
je 0x603e9340
cmp byte [ebp - 0x1d0], 0xf
je 0x603e9340
cmp byte [ebp - 0x1d0], 0x64
je 0x603e9340
cmp byte [ebp - 0x1d0], 0x65
je 0x603e9340
mov edx, dword [ebx]
test edx, edx
je 0x603e90c8
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x90]
cmp edx, dword [eax + 0x14]
jae 0x603e90c8
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x64]
mov edx, dword [eax + edx*4]
mov eax, edx
shr eax, 0x1f
dec eax
and edx, eax
mov dword [ebx], edx
mov ecx, dword [ebp - 0x194]
test ecx, ecx
jne 0x603e9144
test edi, edi
je 0x603e9138
mov esi, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x148]
add eax, esi
mov ebx, dword [ebp - 0x1c4]
mov esi, dword [ebp - 0x194]
add ebx, 0x18
inc esi
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x194], esi
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1c4], ebx
mov al, byte [edx + 0x13]
mov cl, al
xor eax, eax
mov al, cl
cmp dword [ebp - 0x194], eax
jge 0x603e8697
mov ebx, dword [ebp - 0x14c]
cmp dword [ebp - 0x148], ebx
jb 0x603e8ff6
jmp 0x603e8697
mov eax, dword [ebp - 0x150]
cmp byte [eax + 0x12], 0x65
je 0x603e91a3
test edi, edi
jne 0x603e90d6
mov esi, dword [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x150]
mov eax, dword [esi + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebp - 0x160]
push eax
xor eax, eax
mov al, byte [ecx + 0x13]
push eax
mov eax, dword [ebp - 0x194]
push eax
xor eax, eax
mov al, byte [ecx + 0x12]
push eax
mov ax, word [ecx + 0x10]
and eax, 0xffff
push eax
push ebx
push esi
call dword [edx + 0xc]
mov eax, dword [ebp - 0x160]
mov ebx, dword [ebp - 0x140]
add eax, ebx
add esp, 0x20
mov dword [ebp - 0x160], eax
jmp 0x603e90d6
mov eax, dword [eax]
test eax, eax
jne 0x603e91b6
mov edx, dword [ebp - 0x150]
mov edx, dword [edx + 4]
test edx, edx
jne 0x603e9144
cmp eax, 0x66622e
jne 0x603e9144
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x30]
cmp ecx, 0xffffffff
je 0x603e9232
mov edx, dword [ebp - 0x158]
mov eax, dword [edx]
mov dword [esi + 0x40], eax
cmp ecx, dword [ebp - 0x130]
jb 0x603e9294
mov eax, dword [ebp - 0x130]
sub ecx, eax
mov eax, dword [ebp - 0x140]
imul ecx, eax
mov eax, dword [esi + 0x68]
mov esi, dword [ebp - 0x128]
add ecx, eax
push eax
mov eax, dword [esi + 4]
mov edx, dword [eax + 0x178]
xor eax, eax
push ecx
mov ecx, dword [ebp - 0x150]
mov al, byte [ecx + 0x13]
push eax
xor eax, eax
push 0
mov al, byte [ecx + 0x12]
push eax
mov ax, word [ecx + 0x10]
and eax, 0xffff
push eax
mov eax, dword [ebp + 8]
add eax, 0x34
push eax
push esi
call dword [edx + 0xc]
add esp, 0x20
mov esi, dword [ebx + 0xc]
test esi, esi
je 0x603e9248
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], 0xffffffff
jmp 0x603e9144
mov edx, dword [ebp + 8]
mov eax, dword [ebx]
mov dword [edx + 0x34], eax
mov ecx, dword [edx + 0x68]
mov eax, dword [ebx + 4]
mov dword [edx + 0x38], eax
mov eax, dword [ebx + 8]
mov dword [edx + 0x3c], eax
mov eax, dword [ebx + 0xc]
mov dword [edx + 0x40], eax
mov eax, dword [ebx + 0x10]
mov dword [edx + 0x44], eax
mov eax, dword [ebx + 0x14]
mov dword [edx + 0x48], eax
xor edx, edx
mov eax, dword [ebp - 0x160]
sub eax, ecx
mov ecx, dword [ebp + 8]
div dword [ebp - 0x140]
mov edx, dword [ebp - 0x130]
add eax, edx
mov dword [ecx + 0x30], eax
jmp 0x603e9144
mov esi, dword [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x150]
mov eax, dword [esi + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebp - 0x160]
push eax
xor eax, eax
mov al, byte [ecx + 0x13]
push eax
xor eax, eax
push 0
mov al, byte [ecx + 0x12]
push eax
mov ax, word [ecx + 0x10]
and eax, 0xffff
push eax
mov eax, dword [ebp + 8]
add eax, 0x34
push eax
push esi
call dword [edx + 0xc]
add esp, 0x1c
mov edx, dword [esi + 0x90]
mov eax, dword [ebp - 0x140]
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x30]
imul eax, ecx
mov ecx, dword [edx + 0xc]
push 0
add eax, ecx
push eax
mov eax, dword [ebp - 0x128]
push eax
call sym.exchndl.dll_bfd_seek
add esp, 0x10
test eax, eax
jne 0x603e87de
push eax
mov eax, dword [ebp - 0x128]
push eax
mov eax, dword [ebp - 0x140]
push eax
mov eax, dword [ebp - 0x160]
push eax
call sym.exchndl.dll_bfd_bwrite
add esp, 0x10
cmp eax, dword [ebp - 0x140]
je 0x603e9232
jmp 0x603e87de
mov edx, dword [ebx + 0xc]
test edx, edx
je 0x603e90a1
mov esi, dword [ebp + 0xc]
mov ecx, dword [esi + 0x90]
cmp edx, dword [ecx + 0x14]
jae 0x603e90a1
mov eax, dword [ebp + 8]
mov esi, dword [eax + 0x64]
mov eax, dword [esi + edx*4]
test eax, eax
js 0x603e9372
cmp eax, dword [ebp - 0x130]
jae 0x603e9388
cmp edx, dword [ecx + 0x14]
jae 0x603e937a
inc edx
jmp 0x603e9363
mov edx, dword [ebp - 0x15c]
mov dword [ebx + 0xc], edx
jmp 0x603e90a1
cmp edx, dword [ecx + 0x14]
jae 0x603e937a
mov edx, dword [esi + edx*4]
jmp 0x603e9380
mov eax, dword [ebx]
test eax, eax
jne 0x603e9144
mov eax, dword [ebx + 4]
test eax, eax
je 0x603e9144
cmp eax, 3
jle 0x603e9425
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x603e93fd
mov esi, dword [ebx + 4]
mov edx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x134]
push ecx
add eax, esi
push edx
mov edx, dword [ebp + 8]
push eax
mov eax, dword [edx + 0x10]
push eax
call sym.exchndl.dll__bfd_stringtab_add
add esp, 0x10
mov dword [ebp - 0x118], 0
cmp eax, 0xffffffff
je 0x603e8769
add eax, 4
mov dword [ebx + 4], eax
jmp 0x603e9144
sub esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
call sym.exchndl.dll__bfd_coff_read_string_table
add esp, 0x10
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x12c], eax
test eax, eax
jne 0x603e93b6
jmp 0x603e8769
push eax
push eax
push 0x7cd
push 0x603e6800
call sym.exchndl.dll_bfd_assert
add esp, 0x10
jmp 0x603e93ac
mov edx, dword [ebp + 0xc]
push ebx
lea ebx, [ebp - 0xc8]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x178]
xor eax, eax
mov al, cl
push ebx
mov ecx, dword [ebp - 0x194]
push eax
push ecx
xor eax, eax
mov ecx, dword [ebp - 0x150]
mov al, byte [ecx + 0x12]
push eax
mov ax, word [ecx + 0x10]
and eax, 0xffff
push eax
mov eax, dword [ebp - 0x148]
push eax
mov eax, dword [ebp + 0xc]
push eax
call dword [edx]
add esp, 0x20
jmp 0x603e9009
mov eax, dword [ebp - 0x160]
mov esi, dword [ebp - 0x140]
add eax, esi
mov dword [ebp - 0x160], eax
jmp 0x603e8fc8
mov eax, dword [ebp - 0x164]
test bl, bl
mov edi, dword [eax]
je 0x603e8fac
movsx edx, byte [edi + 0x23]
xor eax, eax
mov al, bl
cmp edx, eax
je 0x603e8fac
push eax
push eax
push 0x7a9
push 0x603e6800
call sym.exchndl.dll_bfd_assert
mov edx, dword [ebp - 0x150]
add esp, 0x10
mov cl, byte [edx + 0x13]
jmp 0x603e8fac
mov ebx, dword [ebp - 0x1d0]
cmp dword [ebx + 8], 3
je 0x603e9ee0
mov eax, dword [ebp - 0x168]
test eax, eax
jne case.0x603e8504.2
mov eax, dword [ebp - 0x28]
and eax, 0xffffff
cmp eax, 0x30000
je 0x603e9eae
mov eax, dword [ebp - 0x168]
test eax, eax
jne case.0x603e8504.2
mov ecx, dword [ebp - 0x1d0]
cmp dword [ecx + 4], 1
je 0x603e9e55
mov edi, dword [ebp - 0x168]
test edi, edi
jne case.0x603e8504.2
mov ebx, dword [ebp - 0x1d0]
cmp dword [ebx + 4], 2
je 0x603e9db5
cmp dword [ebx + 8], 2
je 0x603e9db5
mov eax, dword [ebp - 0x168]
test eax, eax
jne case.0x603e8504.2
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 4]
test byte [eax + 0x39], 4
jne 0x603e9590
mov al, byte [ebp - 0x26]
cmp al, 0xf
je 0x603e9906
cmp al, 0xa
je 0x603e9906
cmp al, 0xc
je 0x603e9906
mov eax, dword [ebp - 0x168]
test eax, eax
jne case.0x603e8504.2
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x603e95b0
mov edi, dword [ebp - 0x34]
test edi, edi
jne 0x603e98a5
xor eax, eax
mov al, byte [ebp - 0x26]
cmp eax, 0x12
jg 0x603e9732
cmp eax, 8
jge 0x603e9634
cmp eax, 3
jg 0x603e972d
cmp eax, 2
jl 0x603e9719
mov eax, dword [ebp - 0x2c]
test ax, ax
jle 0x603e9634
mov ebx, dword [ebp - 0x154]
mov esi, dword [ebp + 0xc]
mov ecx, dword [ebx]
mov eax, dword [ecx + 0x2c]
mov edx, dword [ecx + 0x28]
mov ax, word [eax + 0x68]
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x30]
add edx, eax
mov dword [ebp - 0x30], edx
mov eax, dword [esi + 0x90]
mov edi, dword [eax + 0x4c]
test edi, edi
jne 0x603e9613
mov esi, dword [ecx + 0x18]
sub edx, esi
mov dword [ebp - 0x30], edx
mov edi, dword [ebp + 8]
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x90]
mov ebx, dword [eax + 0x4c]
test ebx, ebx
jne 0x603e9634
mov eax, dword [ecx + 0x2c]
mov edx, dword [ebp - 0x30]
mov eax, dword [eax + 0x18]
add edx, eax
mov dword [ebp - 0x30], edx
mov edi, dword [ebp + 8]
mov eax, dword [edi]
test byte [eax], 4
je 0x603e966c
mov dl, byte [ebp - 0x26]
cmp dl, 2
je 0x603e9710
cmp dl, 0x7f
je 0x603e9710
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x90]
mov ebx, dword [eax + 0x4c]
test ebx, ebx
je 0x603e966c
cmp dl, 0x69
je 0x603e9710
mov ebx, dword [ebp - 0x128]
push ecx
mov edx, dword [ebp - 0x160]
mov eax, dword [ebx + 4]
lea esi, [ebp - 0x38]
mov eax, dword [eax + 0x178]
push edx
push esi
push ebx
call dword [eax + 0x10]
add esp, 0x10
mov edi, dword [ebp - 0x158]
mov eax, dword [ebp - 0x15c]
mov dword [edi], eax
mov eax, dword [ebp - 0x16c]
test eax, eax
je 0x603e96d5
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x148]
mov ebx, dword [edx + 0x90]
xor edx, edx
mov edi, dword [ebx + 0x38]
sub eax, edi
div dword [ebp - 0x13c]
mov edx, dword [ebx + 0x50]
mov eax, dword [edx + eax*4]
test eax, eax
je 0x603e9705
mov ecx, dword [ebp - 0x15c]
mov dword [eax + 0x1c], ecx
mov ebx, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x140]
imul eax, ebx
mov esi, dword [ebp - 0x15c]
add esi, ebx
mov ebx, dword [ebp - 0x160]
add ebx, eax
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x160], ebx
jmp case.0x603e8504.2
sub esp, 0xc
push 0x10
jmp 0x603e87d9
mov byte [ebp - 0x26], 3
jmp 0x603e966c
test eax, eax
je 0x603e95d5
dec eax
jne 0x603e95d5
jmp 0x603e9634
cmp eax, 4
jmp 0x603e9722
cmp eax, 0x67
je 0x603e97a2
cmp eax, 0x67
jg 0x603e95d5
cmp eax, 0x65
je 0x603e9753
cmp eax, 0x65
jg 0x603e9634
jmp 0x603e95d5
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0x90]
mov eax, dword [eax + 0x4c]
test eax, eax
je 0x603e95d5
mov eax, 0x603e8203
mov ecx, 4
cld
lea esi, [ebp - 0x38]
mov edi, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x603e95d5
cmp word [ebp - 0x2c], 0
jle 0x603e9634
mov edx, dword [ebp - 0x154]
mov eax, dword [edx]
mov eax, dword [eax + 0x2c]
mov ax, word [eax + 0x68]
mov word [ebp - 0x2c], ax
jmp 0x603e9634
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
cmp ecx, 0xffffffff
je 0x603e97fa
mov edx, dword [ebp - 0x15c]
cmp dword [eax + 0x24], edx
je 0x603e97fa
mov dword [eax + 0x24], edx
cmp ecx, dword [ebp - 0x130]
jb 0x603e9829
mov ebx, dword [ebp - 0x128]
push eax
mov esi, dword [ebp + 8]
mov eax, dword [ebx + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebp - 0x130]
sub ecx, eax
mov eax, dword [ebp - 0x140]
imul ecx, eax
mov eax, dword [esi + 0x68]
add ecx, eax
mov eax, esi
add eax, 0x1c
push ecx
push eax
push ebx
call dword [edx + 0x10]
add esp, 0x10
mov ebx, dword [ebp + 8]
mov esi, dword [ebp - 0x15c]
mov dword [ebx + 0x18], esi
mov eax, dword [ebp - 0x38]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp - 0x34]
mov dword [ebx + 0x20], eax
mov eax, dword [ebp - 0x30]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x2c], eax
jmp 0x603e9634
mov esi, dword [ebp - 0x160]
push edi
mov edi, dword [ebp - 0x128]
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x178]
mov eax, dword [ebp + 8]
add eax, 0x1c
push esi
push eax
push edi
call dword [edx + 0x10]
add esp, 0xc
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x140]
mov edx, dword [edi + 0x90]
mov ebx, dword [ecx + 0x18]
imul eax, ebx
mov ecx, dword [edx + 0xc]
push 0
add eax, ecx
push eax
push edi
call sym.exchndl.dll_bfd_seek
add esp, 0x10
test eax, eax
jne 0x603e87de
mov esi, dword [ebp - 0x160]
push eax
push edi
mov edi, dword [ebp - 0x140]
push edi
push esi
call sym.exchndl.dll_bfd_bwrite
add esp, 0x10
cmp eax, dword [ebp - 0x140]
je 0x603e97fa
jmp 0x603e87de
lea edx, [ebp - 0x38]
mov ebx, dword [ebp + 0xc]
push esi
push 0
push edx
push ebx
call sym.exchndl.dll__bfd_coff_internal_syment_name
add esp, 0x10
mov dword [ebp - 0x118], 0
test eax, eax
je 0x603e8769
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x138]
push ecx
mov ecx, dword [ebp + 8]
push edx
push eax
mov eax, dword [ecx + 0x10]
push eax
call sym.exchndl.dll__bfd_stringtab_add
add esp, 0x10
mov dword [ebp - 0x118], 0
cmp eax, 0xffffffff
je 0x603e8769
add eax, 4
mov dword [ebp - 0x34], eax
jmp 0x603e95b0
cmp byte [ebp - 0x25], 1
jne 0x603e9590
lea esi, [ebp - 0x38]
push eax
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp + 0xc]
push esi
push eax
call sym.exchndl.dll__bfd_coff_internal_syment_name
mov dword [ebp - 0x118], 0
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x603e8769
mov dl, byte [eax]
cmp dl, 0x7e
je 0x603e9dab
cmp dl, 0x2e
je 0x603e9dab
cmp dl, 0x24
je 0x603e9dab
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
cmp dl, byte [eax + 0x18]
je 0x603e9d98
mov eax, dword [ebp + 8]
push 1
add eax, 0x4c
push 1
push ecx
push eax
call sym.exchndl.dll_bfd_hash_lookup
mov dword [ebp - 0x118], 0
add esp, 0x10
test eax, eax
mov dword [ebp - 0x174], eax
je 0x603e8769
mov edi, dword [ebp + 0xc]
push eax
push eax
push 0x10
push edi
call sym.exchndl.dll_bfd_alloc
mov dword [ebp - 0x118], 0
add esp, 0x10
test eax, eax
mov dword [ebp - 0x178], eax
je 0x603e8769
mov edx, dword [ebp - 0x178]
mov ecx, dword [ebp + 0xc]
xor eax, eax
mov al, byte [ebp - 0x26]
mov ebx, dword [ebp - 0x13c]
mov dword [edx + 4], eax
push esi
mov eax, dword [ecx + 4]
mov edx, dword [eax + 0x178]
lea eax, [ebp - 0x78]
push eax
xor eax, eax
mov al, byte [ebp - 0x25]
push eax
xor eax, eax
mov al, byte [ebp - 0x26]
push 0
push eax
mov eax, dword [ebp - 0x28]
and eax, 0xffff
push eax
mov eax, dword [ebp - 0x148]
add eax, ebx
push eax
push ecx
call dword [edx]
add esp, 0x20
mov esi, dword [ebp - 0x178]
mov edi, dword [ebp - 0x150]
add edi, 0x28
mov ecx, dword [ebp - 0x13c]
mov dword [esi + 0xc], 0
mov dword [ebp - 0x188], edi
mov edi, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x148]
imul ecx, edi
mov eax, dword [ebp - 0x13c]
mov ebx, dword [ebp - 0x178]
add ebx, 0xc
lea eax, [edx + eax*2]
mov dword [ebp - 0x17c], ebx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x180], eax
mov eax, dword [edx + 0x90]
mov ebx, dword [eax + 0x38]
add ecx, ebx
mov dword [ebp - 0x184], ecx
cmp dword [ebp - 0x180], ecx
jb 0x603e9bb8
mov edi, dword [ebp - 0x178]
mov eax, dword [edi + 0xc]
test eax, eax
je 0x603e9baa
mov eax, dword [ebp - 0x174]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x18c], eax
test eax, eax
je 0x603e9aba
mov edx, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x18c]
mov eax, dword [edx + 4]
cmp dword [ecx + 4], eax
je 0x603e9ae2
mov ebx, dword [ebp - 0x18c]
mov ebx, dword [ebx]
mov dword [ebp - 0x18c], ebx
test ebx, ebx
jne 0x603e9a94
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x174]
mov ebx, dword [ebp - 0x178]
mov edx, dword [ebp - 0x15c]
mov dword [eax + 8], edx
mov eax, dword [ecx + 0xc]
mov dword [ebx], eax
mov dword [ecx + 0xc], ebx
jmp 0x603e9590
mov ebx, dword [edx + 0xc]
mov esi, dword [ecx + 0xc]
test ebx, ebx
je 0x603e9b26
test esi, esi
je 0x603e9b22
push eax
push eax
mov eax, dword [esi + 4]
push eax
mov eax, dword [ebx + 4]
push eax
call sub.msvcrt.dll_strcmp
add esp, 0x10
test eax, eax
jne 0x603e9b22
mov eax, dword [esi + 8]
cmp dword [ebx + 8], eax
jne 0x603e9b22
mov eax, dword [esi + 0xc]
cmp dword [ebx + 0xc], eax
jne 0x603e9b22
mov ebx, dword [ebx]
mov esi, dword [esi]
test ebx, ebx
je 0x603e9b26
test esi, esi
jne 0x603e9af0
test ebx, ebx
jne 0x603e9aa8
test esi, esi
jne 0x603e9aa8
mov edi, dword [ebp - 0x18c]
test edi, edi
je 0x603e9aba
mov esi, dword [ebp - 0x18c]
mov edi, dword [ebp - 0x130]
cmp dword [esi + 8], edi
jae 0x603e9aba
mov ebx, dword [ebp - 0x178]
mov ecx, dword [ebp + 0xc]
push esi
push esi
push ebx
push ecx
call sym.exchndl.dll_bfd_release
mov esi, dword [ebp - 0x18c]
mov edi, dword [ebp - 0x158]
mov edx, dword [ebp - 0x184]
mov dword [ebp - 0x168], 1
mov eax, dword [esi + 8]
mov dword [edi], eax
mov eax, dword [ebp - 0x148]
sub edx, eax
mov dword [ebp - 0x184], edx
xor edx, edx
mov eax, dword [ebp - 0x184]
div dword [ebp - 0x13c]
mov dword [ebp - 0x1cc], eax
add esp, 0x10
jmp 0x603e9590
push eax
push eax
mov eax, dword [ebp + 0xc]
push edi
push eax
call sym.exchndl.dll_bfd_release
jmp 0x603e9ba2
mov ecx, dword [ebp - 0x180]
push esi
mov ebx, dword [ebp - 0x188]
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x178]
push ebx
push ecx
push esi
call dword [eax + 4]
pop eax
pop edx
push 0x10
push esi
call sym.exchndl.dll_bfd_alloc
mov dword [ebp - 0x118], 0
mov edi, dword [ebp - 0x17c]
add esp, 0x10
test eax, eax
mov dword [edi], eax
je 0x603e8769
mov ebx, dword [ebp - 0x188]
push eax
lea eax, [ebp - 0x88]
push eax
push ebx
push esi
call sym.exchndl.dll__bfd_coff_internal_syment_name
add esp, 0x10
mov dword [ebp - 0x118], 0
mov esi, eax
test eax, eax
je 0x603e8769
sub esp, 0xc
push eax
call sub.msvcrt.dll_strlen
pop edx
inc eax
pop ecx
push eax
mov eax, dword [ebp + 0xc]
push eax
call sym.exchndl.dll_bfd_alloc
add esp, 0x10
mov dword [ebp - 0x118], 0
mov ebx, eax
test eax, eax
je 0x603e8769
push eax
push eax
push esi
push ebx
call sub.msvcrt.dll_strcpy
mov ecx, dword [ebp - 0x188]
mov edx, dword [edi]
add esp, 0x10
mov ax, word [ecx + 0x10]
mov dword [edx + 4], ebx
mov esi, eax
mov dword [edx + 0xc], 0
and esi, 0xffff
mov dword [edx + 8], esi
mov bl, byte [ecx + 0x13]
test bl, bl
je 0x603e9d26
test ax, ax
je 0x603e9d26
mov cl, byte [ecx + 0x12]
cmp cl, 0x66
je 0x603e9d26
mov edx, dword [ebp + 0xc]
push edi
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x178]
lea eax, [ebp - 0xa8]
push eax
xor eax, eax
mov al, bl
push eax
xor eax, eax
mov al, cl
push 0
mov ecx, dword [ebp - 0x13c]
push eax
mov eax, dword [ebp - 0x180]
push esi
add eax, ecx
push eax
mov eax, dword [ebp + 0xc]
push eax
call dword [edx]
mov ecx, dword [ebp - 0xa8]
add esp, 0x20
test ecx, ecx
jle 0x603e9d8e
mov ebx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x148]
mov eax, dword [ebx + 0x90]
mov edi, dword [eax + 0x38]
sub edx, edi
mov eax, edx
sar edx, 0x1f
idiv dword [ebp - 0x13c]
cmp ecx, eax
jge 0x603e9d84
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [edi + 0x64]
mov edx, dword [esi]
mov eax, dword [eax + ecx*4]
mov dword [edx + 0xc], eax
test eax, eax
js 0x603e9d7b
mov ebx, dword [ebp - 0x188]
mov dword [ebp - 0x17c], edx
mov dword [edx], 0
mov esi, dword [ebp - 0x13c]
xor edx, edx
mov ecx, dword [ebp - 0x180]
mov dl, byte [ebx + 0x13]
lea eax, [edx + 1]
lea edx, [edx + edx*4]
imul eax, esi
add ecx, eax
lea ebx, [ebx + edx*4 + 0x14]
mov dword [ebp - 0x180], ecx
mov esi, dword [ebp - 0x184]
mov dword [ebp - 0x188], ebx
cmp dword [ebp - 0x180], esi
jb 0x603e9bb8
jmp 0x603e9a70
mov dword [edx + 0xc], 0
jmp 0x603e9d26
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ecx]
jmp 0x603e9d26
mov eax, dword [ebp - 0x17c]
mov edx, dword [eax]
jmp 0x603e9d26
mov al, byte [ecx + 1]
cmp al, 0x7e
je 0x603e9dab
cmp al, 0x2e
je 0x603e9dab
cmp al, 0x24
jne 0x603e9965
mov ecx, 0x603e8207
jmp 0x603e9965
mov ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x48]
push esi
lea esi, [ebp - 0x38]
push eax
push esi
push ebx
call sym.exchndl.dll__bfd_coff_internal_syment_name
mov dword [ebp - 0x118], 0
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x603e8769
mov ecx, dword [ebp - 0x170]
test ecx, ecx
jne 0x603e955b
mov edi, dword [ebp + 8]
mov eax, dword [edi]
cmp dword [eax + 4], 2
je 0x603e9e3e
mov eax, dword [ebp - 0x16c]
test eax, eax
jne 0x603e955b
mov edx, dword [ebp + 8]
mov eax, dword [edx]
cmp dword [eax + 8], 2
jne 0x603e955b
mov ecx, dword [ebp + 0xc]
push eax
push eax
mov eax, dword [ecx + 4]
push ebx
push ecx
call dword [eax + 0x108]
add esp, 0x10
test eax, eax
je 0x603e955b
mov dword [ebp - 0x168], 1
jmp 0x603e955b
push 0
push 0
push ebx
mov edx, dword [eax + 0x18]
push edx
call sym.exchndl.dll_bfd_hash_lookup
add esp, 0x10
test eax, eax
je 0x603e9e2f
jmp 0x603e9df7
mov eax, dword [ebp - 0x170]
test eax, eax
jne 0x603e9533
mov eax, dword [ebp - 0x2c]
cmp ax, 0xfffe
je 0x603e9e9f
inc ax
jne 0x603e9533
mov al, byte [ebp - 0x26]
cmp al, 1
je 0x603e9e9f
cmp al, 4
je 0x603e9e9f
cmp al, 8
je 0x603e9e9f
cmp al, 0x10
je 0x603e9e9f
cmp al, 0xb
je 0x603e9e9f
cmp al, 9
je 0x603e9e9f
cmp al, 0x11
je 0x603e9e9f
cmp al, 0x12
je 0x603e9e9f
cmp al, 0x66
jne 0x603e9533
mov dword [ebp - 0x168], 1
jmp 0x603e9533
mov eax, esi
test al, al
je 0x603e9515
mov edx, dword [ebp - 0x154]
mov eax, dword [edx]
cmp dword [eax + 0x2c], 0x603c53b0
jne 0x603e9515
mov dword [ebp - 0x168], 1
jmp 0x603e9515
mov eax, dword [ebp - 0x170]
test eax, eax
jne 0x603e94f4
mov dword [ebp - 0x168], 1
jmp 0x603e94f4
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x11c]
and edx, 0xffff
mov cl, byte [ebp - 0x120]
and edx, eax
mov dword [ebp - 0x16c], 1
mov eax, 2
shl eax, cl
cmp edx, eax
jne case.0x603e8504.2
jmp 0x603e94f4
push eax
push 0x603e8208
push 0x5dc
push 0x603e6800
call sym.exchndl.dll__bfd_abort
mov edx, dword [ebp - 0x170]
test edx, edx
je case.0x603e8504.2
jmp 0x603e84fb
mov dword [ebp - 0x170], 0
jmp 0x603e84b9
mov edi, dword [ebp - 0x154]
mov dword [edi], sym.exchndl.dll_bfd_und_section
jmp 0x603e8480
movsx eax, word [ebp - 0x2c]
mov esi, dword [ebp + 0xc]
push edi
push edi
push eax
push esi
call sym.exchndl.dll_coff_section_from_bfd_index
add esp, 0x10
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
jmp 0x603e8480
push eax
push 0x603e8208
push 0x5b6
jmp 0x603e9f3d
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
push esi
push ebx
mov ecx, dword [eax]
push ecx
push edi
call fcn.603e7f60
mov dword [ebp - 0x118], 0
add esp, 0x10
test eax, eax
je 0x603e8769
jmp 0x603e8399