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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x258
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x240], xmm7
movzx eax, byte [rcx + 0x40]
and eax, 7
mov r15, rcx
mov qword [rsp + 0x2a8], rdx
cmp al, 1
je 0x497e78
cmp al, 2
je 0x497e50
mov ecx, 3
call fcn.0043f820
xor eax, eax
movaps xmm6, xmmword [rsp + 0x230]
movaps xmm7, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [rcx + 0x43], 0
jns 0x4982e8
mov rax, qword [rcx + 0xf0]
mov eax, dword [rax + 0x20]
test eax, eax
jne 0x498310
mov eax, 1
jmp 0x497e29
mov rax, qword [rsp + 0x2a8]
test byte [rcx + 0x41], 8
mov rdi, qword [rax + 0x28]
mov rax, qword [rcx + 8]
mov qword [rsp + 0x88], rdi
mov r14, qword [rax + 0x368]
jne 0x498270
mov rax, qword [rsp + 0x2a8]
test byte [rax + 6], 8
jne 0x498680
mov rbp, qword [rcx + 0x88]
mov dword [rsp + 0x80], 0
test rbp, rbp
je 0x498770
mov r12, qword [rsp + 0x2a8]
lea rdi, str..gnu.warning.
nop dword [rax]
mov rbx, qword [rbp]
mov r8d, 0xd
mov rdx, rdi
mov rcx, rbx
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x497fe3
mov eax, dword [rsp + 0x80]
add rbx, 0xd
test eax, eax
je 0x497f3e
mov rcx, qword [rsp + 0x88]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 1
mov rdx, rbx
call fcn.004ca5c0
test rax, rax
je 0x497f3e
movzx eax, byte [rax + 0x18]
sub eax, 3
cmp al, 1
jbe 0x497fe3
mov rsi, qword [rbp + 0x38]
mov rcx, r15
lea rdx, [rsi + 1]
call fcn.00445ac0
test rax, rax
mov r13, rax
je 0x497e27
xor r9d, r9d
mov qword [rsp + 0x20], rsi
mov r8, rax
mov rdx, rbp
mov rcx, r15
call fcn.00448400
test eax, eax
je 0x497e27
mov byte [r13 + rsi], 0
mov r8, rbx
mov rdx, r15
mov rcx, r12
mov qword [rsp + 0x48], 0
mov r9d, 0x1000
movzx eax, byte [r14 + 0x38c]
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], 0
and eax, 1
mov qword [rsp + 0x20], rbp
mov dword [rsp + 0x40], eax
call fcn.004cb5d0
test eax, eax
je 0x497e27
test byte [r12], 2
jne 0x497fe3
or dword [rbp + 0x20], 0x8000
mov qword [rbp + 0x38], 0
mov rbp, qword [rbp + 0x10]
test rbp, rbp
jne 0x497ee0
mov rax, qword [r15 + 0x88]
test rax, rax
je 0x49800e
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
je 0x498a19
mov edx, dword [rsp + 0x80]
test edx, edx
je 0x498770
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x497e27
mov rax, qword [r15 + 0xf0]
mov rcx, r15
mov qword [rsp + 0x208], 0
lea rdx, str..dynamic
mov qword [rsp + 0x210], 0
movzx eax, word [rax + 0xc84]
shr ax, 6
mov r13d, eax
call fcn.00447c40
and r13d, 0xf
test rax, rax
mov rdi, rax
je 0x49a069
lea r8, [rsp + 0x218]
mov rdx, rax
mov rcx, r15
call fcn.00448500
test eax, eax
je 0x49a1fd
mov rdx, rdi
mov rcx, r15
call fcn.00483f30
cmp eax, 0xfffffeff
je 0x49a1fd
mov rdx, qword [r15 + 0xf0]
mov eax, eax
mov rbx, qword [rsp + 0x218]
mov rdx, qword [rdx + 0x50]
mov rax, qword [rdx + rax*8]
mov r12d, dword [rax + 0x28]
mov rax, qword [rdi + 0x38]
add rax, rbx
cmp rbx, rax
jae 0x49a061
lea rsi, [rsp + 0x220]
xor ebp, ebp
mov byte [rsp + 0xa0], r13b
mov rax, qword [r14 + 0x300]
mov qword [rsp + 0x80], 0
mov r13, rsi
jmp 0x49813a
cmp rax, 0x6ffffefc
je 0x498aa0
mov rax, qword [r14 + 0x300]
mov rcx, qword [rsp + 0x218]
movzx edx, byte [rax + 6]
add rbx, rdx
mov rdx, qword [rdi + 0x38]
add rdx, rcx
cmp rbx, rdx
jae 0x49ad41
mov r8, r13
mov rdx, rbx
mov rcx, r15
call qword [rax + 0x50]
mov rax, qword [rsp + 0x220]
cmp rax, 0xe
je 0x498a70
cmp rax, 1
je 0x499e43
cmp rax, 0x1d
je 0x499d74
mov rsi, qword [rsp + 0x210]
test rsi, rsi
jne 0x498108
cmp rax, 0xf
jne 0x498108
mov r8, qword [rsp + 0x228]
mov edx, 0x18
mov rcx, r15
mov qword [rsp + 0x98], r8
call fcn.00445ac0
mov r8, qword [rsp + 0x98]
mov edx, r12d
mov rcx, r15
mov qword [rsp + 0x90], rax
call fcn.0047fc00
cmp qword [rsp + 0x90], 0
je 0x49a1fd
test rax, rax
je 0x49a1fd
mov rcx, rax
mov qword [rsp + 0xa8], rax
call sub.msvcrt.dll_strlen
mov rcx, r15
lea r8, [rax + 1]
mov rdx, r8
mov qword [rsp + 0x98], r8
call fcn.00445ac0
test rax, rax
mov rcx, rax
je 0x49a1fd
mov r8, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa8]
call sub.msvcrt.dll_memcpy
mov rcx, rax
mov rax, qword [rsp + 0x90]
mov qword [rax + 0x10], rcx
mov qword [rax + 8], r15
mov qword [rax], 0
mov rax, qword [rsp + 0x208]
test rax, rax
je 0x49b53a
nop word [rax + rax]
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x498248
mov rax, qword [rsp + 0x90]
mov qword [rdx], rax
mov rax, qword [rsp + 0x220]
jmp 0x498108
mov rsi, qword [rsp + 0x2a8]
movzx esi, byte [rsi]
mov edx, esi
mov byte [rsp + 0x80], sil
and edx, 3
cmp dl, 2
je 0x498a58
cmp dword [rdi + 0x40], 1
jne 0x497e1d
mov rdi, qword [rsp + 0x2a8]
mov rdx, qword [rdi + 0x50]
cmp rax, qword [rdx + 8]
jne 0x497e1d
mov rax, qword [rsp + 0x2a8]
test byte [rax + 6], 8
jne 0x499fc8
mov rbp, qword [rcx + 0x88]
mov dword [rsp + 0x80], 1
test rbp, rbp
jne 0x497ece
jmp 0x49802f
xor edx, edx
call fcn.004c67a0
test rax, rax
je 0x497e6c
mov ecx, 8
call fcn.0043f820
xor eax, eax
jmp 0x497e29
mov ebp, eax
mov rcx, rbp
call fcn.00444310
test rax, rax
mov r12, rax
je 0x497e27
mov rax, qword [r15 + 0xf0]
shl rbp, 4
mov qword [rsp + 0x2a0], r15
mov r13, qword [rsp + 0x2a8]
mov r11, qword [rax + 0x18]
mov rax, qword [r15 + 8]
add rbp, r11
mov r14, r11
mov rax, qword [rax + 0x368]
mov rax, qword [rax + 0x78]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x220]
mov qword [rsp + 0x98], rax
cmp r14, rbp
jae 0x49870f
mov dword [rsp + 0x90], 0
xor edi, edi
mov r15, r14
mov qword [rsp + 0x80], 0xffffffffffffffff
jmp 0x4983b7
cmp al, 2
je 0x4983a7
mov byte [rbx], 1
add r15, 0x10
add edi, 1
cmp r15, rbp
jae 0x498700
mov ebx, edi
add rbx, r12
cmp byte [rbx], 0
jne 0x4983a7
mov rax, qword [rsp + 0x80]
cmp rax, qword [r15 + 8]
je 0x4983a4
mov r8, qword [r15]
mov rdx, r13
mov rcx, qword [rsp + 0x2a0]
mov rax, qword [rsp + 0x88]
call rax
cmp rax, 0xffffffffffffffff
je 0x4986f0
test rax, rax
je 0x4983a7
movzx eax, byte [rax + 0x18]
cmp al, 5
je 0x4984e8
cmp al, 1
jne 0x4983a0
mov rcx, qword [rsp + 0x2a0]
mov rdx, qword [r15 + 8]
call fcn.004c63c0
test rax, rax
mov rcx, rax
mov qword [rsp + 0x220], rax
je 0x4986f0
mov edx, 1
call fcn.004432c0
test eax, eax
je 0x4986f0
mov rax, qword [r13 + 0x28]
mov rcx, r13
mov r9, qword [rsp + 0x98]
mov r8, qword [r15]
mov rdx, qword [rsp + 0x220]
mov rsi, qword [rax + 0x30]
mov rax, qword [r13 + 0x20]
call qword [rax]
test eax, eax
je 0x4983a7
mov rcx, qword [rsp + 0x220]
mov rdx, r13
mov rax, qword [rcx + 8]
call qword [rax + 0x2c0]
test eax, eax
je 0x4986f0
mov rax, qword [r13 + 0x28]
cmp rsi, qword [rax + 0x30]
mov eax, 1
cmove eax, dword [rsp + 0x90]
mov dword [rsp + 0x90], eax
mov eax, edi
jmp 0x4984c9
lea edx, [rax - 1]
mov rsi, qword [r15 + 8]
sub rbx, 1
mov rax, rdx
shl rdx, 4
cmp qword [r14 + rdx + 8], rsi
jne 0x4984d0
test eax, eax
mov byte [rbx], 1
jne 0x4984b0
mov rax, qword [r15 + 8]
mov qword [rsp + 0x80], rax
jmp 0x4983a7
mov rcx, qword [rsp + 0x2a0]
mov rdx, qword [r15 + 8]
call fcn.004c63c0
test rax, rax
mov rcx, rax
je 0x4983a7
mov edx, 1
mov qword [rsp + 0xa0], rax
call fcn.004432c0
test eax, eax
je 0x4983a7
mov rcx, qword [rsp + 0xa0]
movzx eax, byte [rcx + 0x44]
and eax, 0x30
cmp al, 0x10
je 0x498739
test al, al
je 0x49871c
test byte [rcx + 0x41], 8
mov r8, qword [rcx + 0xf0]
jne 0x498750
lea r11, [r8 + 0x60]
mov rax, qword [rcx + 8]
xor edx, edx
mov rax, qword [rax + 0x368]
mov rax, qword [rax + 0x300]
movzx r9d, byte [rax + 5]
mov rax, qword [r11 + 0x20]
div r9
xor r9d, r9d
test byte [r8 + 0xc85], 0x40
mov rsi, rax
jne 0x49858a
mov r9d, dword [r11 + 0x2c]
sub rsi, r9
test rsi, rsi
je 0x4983a7
mov r8, rsi
mov rdx, r11
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov qword [rsp + 0xa8], r11
mov qword [rsp + 0xa0], rcx
call fcn.0047fc20
test rax, rax
mov r8, rax
je 0x4983a7
shl rsi, 5
mov rcx, qword [rsp + 0xa0]
lea r9, [rax + rsi]
mov r11, qword [rsp + 0xa8]
mov rsi, rax
cmp rax, r9
jae 0x498673
mov qword [rsp + 0xa0], r12
mov r12, r9
mov qword [rsp + 0xa8], r14
mov r14, rax
mov qword [rsp + 0xb0], rbp
mov rbp, r11
mov qword [rsp + 0xb8], rbx
mov rbx, rcx
jmp 0x498641
mov rdx, qword [r15]
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x499cad
add rsi, 0x20
cmp rsi, r12
jae 0x498658
mov edx, dword [rbp + 0x28]
mov rcx, rbx
mov r8d, dword [rsi + 0x10]
call fcn.0047fc00
test rax, rax
mov rcx, rax
jne 0x498628
mov r8, r14
mov r12, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xa8]
mov rcx, r8
call sub.msvcrt.dll_free
jmp 0x4983a7
mov dword [rsp + 0x80], 0
mov rax, qword [r15 + 0xf0]
mov r9d, dword [r14 + 8]
movzx edx, word [rax + 0x32]
cmp r9d, edx
je 0x4986bd
mov eax, dword [r14 + 0x2f8]
cmp edx, eax
jne 0x4986d8
test eax, eax
je 0x4986d8
lea rcx, str.alternate_ELF_machine_code_found___d__in__pB__expecting__d
mov r8, r15
call fcn.0043f660
mov rbp, qword [r15 + 0x88]
test rbp, rbp
jne 0x497ece
jmp 0x49800e
mov eax, dword [r14 + 0x2fc]
test eax, eax
je 0x4986bd
cmp edx, eax
jne 0x4986bd
jmp 0x4986ae
mov rcx, r12
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x497e29
mov edx, dword [rsp + 0x90]
test edx, edx
jne 0x498372
mov rcx, r12
call sub.msvcrt.dll_free
jmp 0x497e6c
mov qword [rsp + 0xa0], rcx
call fcn.004c5300
mov rcx, qword [rsp + 0xa0]
test eax, eax
je 0x49853e
mov rcx, qword [rcx + 0x48]
mov r8, qword [rcx + 0xf0]
lea r11, [r8 + 0x60]
jmp 0x498553
mov r9d, dword [r8 + 0xc74]
lea r11, [r8 + 0x150]
test r9d, r9d
jne 0x498553
jmp 0x49854f
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
test al, 1
jne 0x4987ab
and eax, 3
cmp al, 2
je 0x4987bd
mov rax, qword [rsp + 0x2a8]
test byte [rax + 7], 8
je 0x4987bd
mov rdi, qword [rsp + 0x2a8]
movabs rax, 0x400000000010
and rax, qword [rdi]
je 0x4987bd
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
je 0x49a775
mov rcx, qword [r15 + 0xf0]
mov dword [rsp + 0x80], 0
mov dword [rsp + 0x130], 1
mov dword [rsp + 0x134], 0
lea rax, [rcx + 0x60]
mov qword [rsp + 0xb8], rax
mov rax, qword [r14 + 0x300]
xor edx, edx
mov qword [rsp + 0xf8], 0
mov rdi, qword [rsp + 0xb8]
movzx r8d, byte [rax + 5]
mov rax, qword [rdi + 0x20]
div r8
test byte [rcx + 0xc85], 0x40
mov qword [rsp + 0xd8], rax
jne 0x498841
mov edi, dword [rdi + 0x2c]
sub rax, rdi
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0xd8], rax
cmp qword [rsp + 0xd8], 0
mov qword [rsp + 0xe8], 0
mov rsi, qword [rcx + 0x2f8]
jne 0x499c21
mov eax, dword [rsp + 0x80]
test eax, eax
jne 0x499f1b
mov rbx, qword [r15 + 0xf0]
xor ebp, ebp
test byte [rbx + 0xc84], 0x40
je 0x499bc0
mov r10, qword [rsp + 0x88]
mov eax, dword [r10 + 0x18]
test eax, eax
je 0x49aeb7
mov r8, qword [r10]
shl rax, 3
xor edx, edx
mov qword [rsp + 0x120], rax
lea r9, [r8 + rax]
nop dword [rax]
mov rax, qword [r8]
test rax, rax
je 0x4988dc
mov ecx, dword [r10 + 0x20]
nop dword [rax]
add rdx, rcx
cmp byte [rax + 0x18], 7
jne 0x4988d4
add rdx, rcx
mov rax, qword [rax]
test rax, rax
jne 0x4988c8
add r8, 8
cmp r9, r8
jne 0x4988b8
mov rax, qword [rsp + 0x120]
lea rcx, [rdx + rax]
call fcn.00444050
test rax, rax
mov qword [rsp + 0x118], rax
je 0x4998a9
mov rcx, qword [rsp + 0x88]
mov edx, 1
call fcn.00443950
test rax, rax
mov qword [rsp + 0x140], rax
je 0x49a1eb
xor r8d, r8d
mov rdx, qword [rsp + 0x2a8]
mov rcx, r15
call qword [r14 + 0xf8]
test eax, eax
je 0x49a1eb
mov rdi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rdi]
call sub.msvcrt.dll_memcpy
mov rax, rdi
movdqu xmm6, xmmword [rdi + 0x28]
mov rcx, qword [rax + 0x90]
mov rdi, qword [rdi]
movq xmm7, qword [rax + 0x18]
mov qword [rsp + 0x148], rdi
call fcn.004a6c90
test rax, rax
mov r13, rax
je 0x49a1eb
mov rdi, qword [rsp + 0x88]
mov r12d, dword [rdi + 0x18]
test r12d, r12d
je 0x498ace
mov rax, qword [rsp + 0x118]
xor r12d, r12d
mov rcx, qword [rsp + 0x120]
add rcx, rax
nop word [rax + rax]
mov rax, qword [rdi]
mov rbx, qword [rax + r12*8]
test rbx, rbx
je 0x498ac0
mov r8d, dword [rdi + 0x20]
jmp 0x4989ec
mov rbx, qword [rbx]
test rbx, rbx
je 0x498ac0
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov r8d, dword [rdi + 0x20]
mov rcx, rax
add rcx, r8
cmp byte [rbx + 0x18], 7
jne 0x4989e0
mov rdx, qword [rbx + 0x28]
call sub.msvcrt.dll_memcpy
mov r8d, dword [rdi + 0x20]
mov rcx, rax
add rcx, r8
jmp 0x4989e0
mov eax, dword [rsp + 0x80]
test eax, eax
je 0x49a03f
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x497e27
lea r8, str.elf_link_add_object_symbols
mov edx, 0xfc9
lea rcx, str..._.._.._src_binutils_2.32_bfd_elflink.c
call fcn.0043f7c0
nop word [rax + rax]
mov ecx, 5
call fcn.0043f820
xor eax, eax
jmp 0x497e29
mov r8d, dword [rsp + 0x228]
mov edx, r12d
mov rcx, r15
call fcn.0047fc00
test rax, rax
mov rbp, rax
je 0x49a1fd
mov rax, qword [rsp + 0x220]
jmp 0x498158
mov r8d, dword [rsp + 0x228]
mov edx, r12d
mov rcx, r15
call fcn.0047fc00
mov qword [rsp + 0x80], rax
jmp 0x498114
add r12, 1
cmp r12d, dword [rdi + 0x18]
jb 0x4989c8
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x128], 0
mov rbx, qword [rsp + 0xe8]
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x138], 0
lea rdx, [rbp + rax*2]
xor eax, eax
test rbp, rbp
cmovne rax, rdx
mov rdi, rax
mov rax, qword [rsp + 0xd8]
shl rax, 5
add rax, rbx
cmp rbx, rax
mov qword [rsp + 0xc0], rax
jae 0x49a436
mov rax, qword [0x005ab640]
mov qword [rsp + 0x90], r14
mov r14, rsi
mov qword [rsp + 0x108], rbp
mov qword [rsp + 0x110], r13
add rax, 0x118
mov qword [rsp + 0xf0], rax
jmp 0x498fb8
mov rax, qword [rsp + 0x2a8]
test byte [rax + 7], 0x40
je 0x499005
movzx esi, byte [rbx + 0x14]
mov dword [rbx + 0x18], 0
shr sil, 4
cmp sil, 2
je 0x49a02f
ja 0x499c00
test sil, sil
je 0x498f94
mov dword [rsp + 0xa8], 0
mov esi, 1
mov rax, qword [0x005ab640]
mov dword [rsp + 0xc8], 0
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0xb8]
mov rcx, r15
mov r8d, dword [rbx + 0x10]
mov edx, dword [rax + 0x28]
call fcn.0047fc00
test rax, rax
mov qword [rsp + 0x1f8], rax
je 0x49985c
cmp dword [rbx + 0x18], 0xfffffff2
je 0x4996a8
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0xc0]
test rax, rax
je 0x498c80
lea rdx, [rsp + 0x1e8]
mov r8, rbx
mov rcx, r15
mov qword [rsp + 0x30], rdx
lea rdx, [rsp + 0x1f0]
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 0x1b8]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x1f8]
mov rdx, qword [rsp + 0x2a8]
call rax
test eax, eax
je 0x49985c
cmp qword [rsp + 0x1f8], 0
je 0x498f94
mov rbp, qword [rsp + 0x1f0]
test rbp, rbp
je 0x49ac87
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 6
je 0x499710
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0xa0], 0
add rax, 0x118
cmp rbp, rax
je 0x498cd1
mov eax, dword [rbp + 0x20]
shr eax, 0xc
xor eax, 1
and eax, 1
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x90]
mov dword [rsp + 0x1bc], 0
mov dword [rsp + 0x1c4], 0
mov dword [rsp + 0x1d0], 0
mov dword [rsp + 0x1cc], 0
movzx eax, byte [rax + 0x38c]
mov qword [rsp + 0x200], 0
mov byte [rsp + 0xb0], al
shr al, 1
and eax, 1
mov dword [rsp + 0x1c0], eax
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x499130
test rdi, rdi
je 0x499758
lea r8, [rsp + 0x218]
mov rdx, rdi
mov rcx, r15
call fcn.0047f980
movzx r13d, word [rsp + 0x218]
mov r12d, r13d
mov eax, r13d
and eax, 0x7fff
and r12w, 0x7fff
test r13w, r13w
mov dword [rsp + 0xb0], eax
jns 0x4997d8
mov r10d, dword [rbx + 0x18]
mov rcx, qword [r15 + 0xf0]
test r10d, r10d
je 0x499a7c
mov edx, dword [rcx + 0x338]
mov eax, dword [rsp + 0xb0]
cmp edx, eax
jb 0x49aeca
test r13w, 0x7ffe
je 0x49996c
sub eax, 1
shl rax, 6
add rax, qword [rcx + 0x340]
mov rax, qword [rax + 0x20]
test rax, rax
mov qword [rsp + 0xe0], rax
je 0x49aeca
mov rcx, rax
call sub.msvcrt.dll_strlen
mov qword [rsp + 0xd0], rax
mov rcx, qword [rsp + 0x1f8]
call sub.msvcrt.dll_strlen
mov r12, rax
mov rax, qword [rsp + 0xd0]
add rax, r12
cmp word [rsp + 0x218], 0
lea rdx, [rax + 3]
jns 0x498e1a
lea rdx, [rax + 2]
mov rcx, qword [rsp + 0x88]
call fcn.00443950
test rax, rax
mov r13, rax
je 0x49985c
mov rdx, qword [rsp + 0x1f8]
mov r8, r12
mov rcx, rax
add r12, r13
call sub.msvcrt.dll_memcpy
mov byte [r12], 0x40
lea rcx, [r12 + 1]
cmp word [rsp + 0x218], 0
js 0x498e72
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x498e72
lea rcx, [r12 + 2]
mov byte [r12 + 1], 0x40
mov r8, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0xe0]
add r8, 1
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1f8], r13
mov rax, qword [rsp + 0x98]
add rax, 0x118
cmp qword [rsp + 0x1f0], rax
je 0x498ee0
mov r8d, dword [rsp + 0x80]
test r8d, r8d
jne 0x498ee0
test byte [r15 + 0x43], 0x20
je 0x498ee0
movzx eax, byte [rbx + 0x15]
mov edx, eax
and edx, 3
cmp dl, 1
je 0x498ee0
and eax, 0xfffffffc
or eax, 2
mov byte [rbx + 0x15], al
nop word cs:[rax + rax]
mov qword [rsp + 0x30], r14
mov r9, rbx
mov r8, r13
mov rcx, r15
lea rax, [rsp + 0x1d0]
mov rdx, qword [rsp + 0x2a8]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x1bc]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x1c0]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x1c8]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x220]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x1cc]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x1c4]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x200]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x20], rax
call fcn.00495560
test eax, eax
je 0x49985c
mov eax, dword [rsp + 0x220]
test eax, eax
je 0x4990a8
lea rax, [rdi + 2]
add rbx, 0x20
add r14, 8
test rdi, rdi
cmovne rdi, rax
mov rax, qword [rsp + 0xc0]
cmp rbx, rax
jae 0x49a41e
mov rax, qword [rbx]
mov rcx, rbx
mov dword [rsp + 0x1c8], 0
mov dword [rsp + 0x1b8], 0
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x90]
call qword [rax + 0x2a0]
test eax, eax
mov dword [rsp + 0xa8], eax
jne 0x498b70
movzx esi, byte [rbx + 0x14]
shr sil, 4
cmp sil, 2
je 0x4997c0
ja 0x499730
test sil, sil
je 0x498f94
mov esi, dword [rsp + 0xa8]
mov edx, dword [rbx + 0x18]
test esi, esi
jne 0x49998c
test edx, edx
je 0x49998c
mov dword [rsp + 0x1b8], 2
mov esi, 1
mov dword [rsp + 0xa8], 0
nop dword [rax + rax]
cmp edx, 0xfffffff1
je 0x4998e0
cmp edx, 0xfffffff2
jne 0x49990d
mov rax, qword [0x005ab640]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x1f0], rax
mov rax, qword [rbx + 8]
mov qword [rsp + 0x1e8], rax
mov dword [rsp + 0xc8], 0
jmp 0x498be4
mov ecx, dword [rsp + 0x1c8]
test ecx, ecx
je 0x4990cb
mov edx, dword [rsp + 0x1d0]
test edx, edx
cmove eax, dword [rsp + 0xa0]
mov dword [rsp + 0xa0], eax
mov rdx, qword [r14]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
ja 0x4990ef
nop dword [rax]
mov rdx, qword [rdx + 0x28]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
jbe 0x4990e0
mov rax, qword [r15 + 0xf0]
mov rax, qword [rax + 0x340]
test rax, rax
je 0x499130
mov ecx, dword [rsp + 0xb0]
cmp ecx, 1
jbe 0x499130
test byte [rsp + 0xa0], 1
je 0x499130
sub ecx, 1
shl rcx, 6
add rax, rcx
mov qword [rdx + 0x70], rax
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x48], r14
mov rdx, r15
mov r9d, dword [rsp + 0x1b8]
mov r8, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x2a8]
movzx eax, byte [rax + 0x38c]
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
and eax, 1
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x20], rax
call fcn.004cb5d0
test eax, eax
je 0x49985c
test byte [r15 + 0x41], 8
mov edx, dword [rsp + 0x1b8]
jne 0x4991c6
mov rax, qword [rsp + 0x2a8]
mov rax, qword [rax + 0x50]
mov rcx, qword [rax + 8]
cmp dword [rcx + 8], 5
je 0x499fd8
mov r13, qword [r14]
movzx eax, byte [r13 + 0x18]
mov r12, r13
sub eax, 6
cmp al, 1
ja 0x4991f2
nop dword [rax + rax]
mov r12, qword [r12 + 0x28]
movzx eax, byte [r12 + 0x18]
sub eax, 6
cmp al, 1
jbe 0x4991e0
mov eax, dword [rsp + 0xc8]
test eax, eax
je 0x499206
mov dword [r12 + 0x38], 0xfffffffd
and edx, 0x80
mov qword [r14], r12
mov dword [rsp + 0xb0], edx
je 0x49922d
movzx eax, byte [rsp + 0x80]
test byte [rsp + 0xa0], al
jne 0x499b15
mov eax, dword [rsp + 0xa8]
test eax, eax
jne 0x499790
mov rax, qword [rsp + 0x1f0]
test byte [rax + 0x21], 0x10
je 0x499260
cmp byte [r12 + 0x18], 5
je 0x499fc0
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x498f94
mov r11d, dword [r15 + 0x40]
shr r11d, 5
and r11d, 0xfffff
test r11d, 0x10000
jne 0x499996
mov eax, dword [rsp + 0x80]
test eax, eax
jne 0x49a248
mov ebp, dword [rsp + 0xa0]
movzx eax, byte [r12 + 0x5b]
test ebp, ebp
jne 0x49aca6
mov edx, eax
or edx, 1
cmp sil, 2
mov byte [r12 + 0x5b], dl
je 0x49b206
or eax, 0x11
cmp r13, r12
mov byte [r12 + 0x5b], al
je 0x4992de
test byte [r13 + 0x5c], 8
jne 0x49a28b
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
not eax
test al, 3
je 0x49aead
xor esi, esi
test byte [r12 + 0x5b], 0xc
setne sil
mov r8d, dword [rsp + 0x1c8]
test r8d, r8d
jne 0x499a37
movzx eax, byte [r12 + 0x18]
cmp al, 5
je 0x4999a9
mov ebp, dword [rsp + 0x1cc]
mov ecx, dword [rsp + 0xa8]
or ecx, ebp
je 0x49af0c
test ebp, ebp
setne r8b
sub eax, 3
cmp al, 1
jbe 0x499363
mov edx, 0x12fc
mov byte [rsp + 0x98], r8b
lea rcx, str..._.._.._src_binutils_2.32_bfd_elflink.c
call fcn.0043f7a0
movzx r8d, byte [rsp + 0x98]
bsf eax, dword [r12 + 0x30]
mov r13d, 0xffffffff
mov rdx, qword [r12 + 0x28]
cmovne r13d, eax
mov rax, qword [rdx + 0xf0]
test rax, rax
je 0x49939b
mov eax, dword [rax + 0x40]
shr eax, 5
test eax, 0x10040
jne 0x49939b
mov eax, dword [rdx + 0x70]
cmp r13d, eax
cmova r13d, eax
test r8b, r8b
mov rdx, qword [rsp + 0x200]
mov r9, r15
je 0x49a712
cmp r13d, ebp
jae 0x4993ef
mov eax, 1
mov ecx, ebp
mov r8, qword [rsp + 0x1f8]
mov r11d, eax
shl r11d, cl
mov ecx, r13d
shl eax, cl
test r9, r9
je 0x49add4
mov qword [rsp + 0x28], rdx
lea rcx, str.warning:_alignment__u_of_symbol___s_in__pB_is_smaller_than__u_in__pB
mov edx, eax
mov dword [rsp + 0x20], r11d
call fcn.0043f660
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x499421
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x499421
mov r10d, dword [rsp + 0xa0]
mov r8, qword [r12 + 0x50]
test r10d, r10d
jne 0x49acef
test r8, r8
jne 0x499421
mov qword [r12 + 0x50], rdx
movzx eax, byte [r12 + 0x18]
cmp al, 5
je 0x499a68
movzx ebp, byte [rbx + 0x14]
and ebp, 0xf
je 0x4994a5
mov r8d, dword [rsp + 0xb0]
movzx edx, byte [r12 + 0x58]
test r8d, r8d
jne 0x49a211
test byte [rsp + 0xa0], 1
je 0x49a211
cmp bpl, 0xa
movzx r9d, bpl
jne 0x49947f
mov eax, dword [r15 + 0x40]
shr eax, 5
and eax, 0x40
cmp eax, 1
sbb r9d, r9d
and r9d, 8
add r9d, 2
movzx r8d, dl
cmp r8d, r9d
je 0x4994a5
test dl, dl
mov ebp, r9d
je 0x4994a0
mov r13d, dword [rsp + 0x1c0]
test r13d, r13d
je 0x49b260
mov byte [r12 + 0x58], bpl
mov ebp, dword [rsp + 0xa0]
mov r8, rbx
mov rdx, r12
mov eax, dword [rsp + 0x80]
mov rcx, qword [r15 + 8]
mov r9, qword [rsp + 0x1f0]
mov dword [rsp + 0x20], ebp
mov dword [rsp + 0x28], eax
call fcn.004934c0
test ebp, ebp
je 0x49a011
mov rax, qword [rsp + 0x1f0]
test byte [rax + 0x21], 0x20
je 0x49a15d
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
mov byte [rsp + 0x98], al
and eax, 3
cmp al, 2
je 0x49a15d
movzx eax, byte [rbx + 0x16]
movzx edx, byte [r12 + 0x5d]
mov byte [r12 + 0x5a], al
mov eax, dword [rsp + 0x1b8]
and edx, 0xfffffffb
shr eax, 0x17
and eax, 1
shl eax, 2
or eax, edx
mov byte [r12 + 0x5d], al
mov eax, dword [rsp + 0x80]
cmp eax, 1
mov esi, eax
je 0x49a01c
mov rcx, qword [rsp + 0x1f8]
mov edx, 0x40
call sub.msvcrt.dll_strchr
test rax, rax
je 0x499590
cmp byte [rax + 1], 0x40
je 0x499590
cmp qword [rsp + 0x100], 0
je 0x49b227
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax*8], r12
add rax, 1
mov qword [rsp + 0x128], rax
test esi, esi
mov eax, dword [r12 + 0x3c]
je 0x49a01c
cmp eax, 0xffffffff
je 0x49ad93
movzx eax, byte [r12 + 0x59]
and eax, 3
sub eax, 1
cmp eax, 1
jbe 0x49a2f0
mov r8d, dword [rsp + 0x130]
test r8d, r8d
jne 0x498f94
mov ecx, dword [rsp + 0x1d0]
test ecx, ecx
je 0x498f94
test byte [rsp + 0xa0], 1
je 0x498f94
test esi, esi
je 0x49a33d
test byte [r12 + 0x5b], 0x10
je 0x49a33d
mov rbp, qword [rsp + 0x200]
test rbp, rbp
je 0x49b800
test byte [rbp + 0x42], 0x20
jne 0x49a33d
mov r9, qword [r12 + 8]
mov r8, rbp
mov rax, qword [r15 + 0xf0]
lea rcx, [0x005993fa]
mov rsi, qword [rax + 0x308]
mov rax, qword [rsp + 0x2a8]
mov rdx, rsi
mov rax, qword [rax + 0x20]
call qword [rax + 0x68]
mov rax, qword [r15 + 0xf0]
movzx edx, word [rax + 0xc84]
shr dx, 6
and edx, 0xf
cmp dl, 7
ja 0x49b937
and word [rax + 0xc84], 0xffbf
mov r9d, 1
mov r8, rsi
mov rcx, r15
mov rdx, qword [rsp + 0x2a8]
call fcn.00497980
test eax, eax
js 0x49985c
jne 0x49b5b2
mov dword [rsp + 0x130], 1
jmp 0x498f94
test byte [r15 + 0x42], 0x20
jne 0x499821
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 6
jne 0x498c16
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
mov byte [rsp + 0xa0], al
and eax, 3
cmp al, 2
je 0x498c16
lea r12, str..tcommon
mov rcx, r15
mov rdx, r12
call fcn.00447c40
test rax, rax
mov rbp, rax
je 0x49af49
mov qword [rsp + 0x1f0], rbp
jmp 0x498c91
movzx eax, word [rbp + 0x24]
and ax, 0x380
cmp ax, 0x200
jne 0x498ca0
jmp 0x498f94
cmp sil, 0xa
mov edx, dword [rbx + 0x18]
jne 0x499744
mov dword [rsp + 0x1b8], 0x800000
test edx, edx
jne 0x499060
jmp 0x498bba
mov rax, qword [rsp + 0x2a8]
cmp byte [rax + 4], 0
js 0x499af8
mov dword [rsp + 0xb0], 0
xor r11d, r11d
mov word [rsp + 0x218], r11w
mov r13, qword [rsp + 0x1f8]
jmp 0x498e93
cmp byte [r12 + 0x18], 5
jne 0x499260
mov rcx, qword [rbx]
call fcn.00444810
mov edx, dword [rsp + 0x1cc]
mov rcx, qword [r12 + 0x28]
cmp eax, edx
cmovb eax, edx
mov dword [rcx], eax
jmp 0x499260
mov edx, dword [rbx + 0x18]
mov dword [rsp + 0x1b8], pe_nt_image_headers64
jmp 0x499744
test r13w, 0x7ffe
mov rdx, qword [rsp + 0x1f0]
je 0x499781
mov rax, qword [rsp + 0x98]
add rax, 0x230
cmp rdx, rax
jne 0x498d84
movzx ecx, byte [rbx + 0x14]
mov rax, qword [rsp + 0x90]
and ecx, 0xf
call qword [rax + 0x2c8]
test eax, eax
jne 0x498d84
jmp 0x499781
lea r12, [0x00599219]
mov rcx, r15
mov rdx, r12
call fcn.00447c40
mov r8d, 0x209001
test rax, rax
mov rbp, rax
jne 0x4996fd
mov rdx, r12
mov rcx, r15
call fcn.004480e0
test rax, rax
mov rbp, rax
jne 0x4996fd
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
cmp qword [rsp + 0x118], 0
je 0x499884
mov rcx, qword [rsp + 0x118]
call sub.msvcrt.dll_free
test r13, r13
je 0x499891
mov rcx, r13
call sub.msvcrt.dll_free
cmp qword [rsp + 0x100], 0
je 0x4998a9
mov rcx, qword [rsp + 0x100]
call sub.msvcrt.dll_free
test rbp, rbp
je 0x4998b6
mov rcx, rbp
call sub.msvcrt.dll_free
cmp qword [rsp + 0xe8], 0
je 0x497e27
mov rcx, qword [rsp + 0xe8]
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x497e29
mov rax, qword [0x005ab640]
mov dword [rsp + 0xc8], 0
mov qword [rsp + 0x98], rax
add rax, 0x230
mov qword [rsp + 0x1f0], rax
jmp 0x498be4
mov rcx, r15
call fcn.00482610
test rax, rax
mov qword [rsp + 0x1f0], rax
je 0x49a1a4
mov rcx, qword [0x005ab640]
lea rdx, [rcx + 0x230]
mov qword [rsp + 0x98], rcx
cmp rax, rdx
je 0x49994b
cmp qword [rax + 0x68], rdx
je 0x49a734
mov edx, dword [r15 + 0x40]
shr edx, 5
and edx, 0x42
je 0x499095
mov rax, qword [rax + 0x28]
sub qword [rsp + 0x1e8], rax
jmp 0x499095
lea rax, [0x005991cd]
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xe0], rax
jmp 0x498dec
mov esi, 1
jmp 0x499744
xor esi, esi
mov r9d, dword [rsp + 0xa0]
test r9d, r9d
je 0x4992ff
mov rax, qword [rsp + 0x1f0]
mov dword [rsp + 0xe0], r11d
movzx r8d, byte [r12 + 0x5c]
mov rbp, qword [rsp + 0x1f8]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x1e8]
test r8b, 2
mov byte [rsp + 0xd0], r8b
mov qword [rsp + 0x208], rax
jne 0x499a37
mov edx, 0x40
mov rcx, rbp
call sub.msvcrt.dll_strchr
mov r11d, dword [rsp + 0xe0]
movzx r8d, byte [rsp + 0xd0]
mov r13, rax
test r8b, 6
jne 0x49a7e8
test r13, r13
mov eax, r8d
je 0x49b4e6
cmp byte [r13 + 1], 0x40
je 0x49af54
or eax, 6
mov byte [r12 + 0x5c], al
mov ebp, dword [rsp + 0x1cc]
mov eax, dword [rsp + 0xa8]
or eax, ebp
je 0x4993ef
movzx eax, byte [r12 + 0x18]
cmp al, 5
jne 0x499334
mov rdx, qword [rbx + 8]
test rdx, rdx
jne 0x4993f8
mov rax, qword [r12 + 0x30]
mov qword [r12 + 0x50], rax
mov eax, 5
jmp 0x49942f
mov rdx, qword [rcx + 0x348]
test rdx, rdx
je 0x499b7d
mov rax, qword [rdx + 0x20]
test rax, rax
jne 0x499aad
jmp 0x499b70
mov rax, qword [rax + 0x18]
test rax, rax
je 0x499b70
cmp r12w, word [rax + 6]
jne 0x499aa0
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x1f8]
test rax, rax
mov qword [rsp + 0xe0], rax
je 0x49b904
call sub.msvcrt.dll_strlen
mov rcx, qword [rsp + 0xe0]
mov r12, rax
call sub.msvcrt.dll_strlen
mov qword [rsp + 0xd0], rax
lea rdx, [r12 + rax + 2]
jmp 0x498e1a
mov rax, qword [r15 + 0xf0]
mov eax, dword [rax + 0x338]
mov r13d, eax
mov word [rsp + 0x218], ax
jmp 0x498d62
movzx ecx, byte [rbx + 0x14]
mov rax, qword [rsp + 0x90]
and ecx, 0xf
call qword [rax + 0x2c8]
test eax, eax
jne 0x49922d
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x49922d
cmp qword [r12 + 0x68], 0
jne 0x49922d
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x138], r12
mov qword [r12 + 0x68], rax
jmp 0x49922d
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x499a8c
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
mov r9d, dword [rsp + 0xb0]
mov rcx, qword [rsp + 0x1f8]
mov r8, rcx
mov rdx, r15
lea rcx, str._pB:__s:_invalid_needed_version__d
call fcn.0043f660
mov ecx, 0x11
call fcn.0043f820
jmp 0x49986c
xor r13d, r13d
pxor xmm6, xmm6
mov qword [rsp + 0x120], 0
pxor xmm7, xmm7
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x140], 0
jmp 0x498ace
cmp sil, 0xa
jne 0x499c11
mov dword [rsp + 0x1b8], 0x800000
mov dword [rsp + 0xa8], 0
jmp 0x498bba
mov r9, qword [rsp + 0xf8]
mov rcx, r15
mov qword [rsp + 0x30], 0
mov r8, qword [rsp + 0xd8]
mov qword [rsp + 0x28], 0
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x20], 0
call fcn.0047fc20
test rax, rax
mov qword [rsp + 0xe8], rax
je 0x497e27
test rsi, rsi
jne 0x498863
mov rax, qword [rsp + 0xd8]
mov rcx, r15
lea rdx, [rax*8]
call fcn.00446040
test rax, rax
mov rsi, rax
je 0x4998c5
mov rax, qword [r15 + 0xf0]
mov qword [rax + 0x2f8], rsi
jmp 0x498863
movzx eax, byte [rsi + 0x14]
mov rcx, rbx
mov r8, r14
mov r12, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov edx, eax
mov r14, qword [rsp + 0xa8]
shr dl, 4
cmp dl, 1
je 0x499cea
cmp dl, 9
jbe 0x498673
mov rdx, qword [rcx + 8]
mov ecx, eax
mov qword [rsp + 0xa8], r8
and ecx, 0xf
mov rdx, qword [rdx + 0x368]
mov qword [rsp + 0xa0], rdx
call qword [rdx + 0x2c8]
mov rdx, qword [rsp + 0xa0]
test eax, eax
mov r8, qword [rsp + 0xa8]
jne 0x498673
mov ecx, dword [rsi + 0x18]
test ecx, ecx
je 0x498673
mov qword [rsp + 0xa0], r8
mov rcx, rsi
call qword [rdx + 0x2a0]
mov r8, qword [rsp + 0xa0]
test eax, eax
jne 0x498673
mov eax, dword [rsi + 0x18]
mov rcx, r8
add eax, 0x100
cmp eax, 0xf0
jbe 0x498676
call sub.msvcrt.dll_free
jmp 0x498406
mov r8, qword [rsp + 0x228]
mov edx, 0x18
mov rcx, r15
mov qword [rsp + 0x90], r8
call fcn.00445ac0
mov r8, qword [rsp + 0x90]
mov edx, r12d
mov rcx, r15
mov rsi, rax
call fcn.0047fc00
test rsi, rsi
je 0x49a1fd
test rax, rax
je 0x49a1fd
mov rcx, rax
mov qword [rsp + 0x98], rax
call sub.msvcrt.dll_strlen
mov rcx, r15
lea r8, [rax + 1]
mov rdx, r8
mov qword [rsp + 0x90], r8
call fcn.00445ac0
test rax, rax
mov rcx, rax
je 0x49a1fd
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
call sub.msvcrt.dll_memcpy
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0x210]
mov qword [rsi], 0
test rax, rax
je 0x49b1f9
nop dword [rax]
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x499e28
mov rax, qword [rsp + 0x220]
mov qword [rdx], rsi
jmp 0x49816c
mov r8, qword [rsp + 0x228]
mov edx, 0x18
mov rcx, r15
mov qword [rsp + 0x90], r8
call fcn.00445ac0
mov r8, qword [rsp + 0x90]
mov edx, r12d
mov rcx, r15
mov rsi, rax
call fcn.0047fc00
test rsi, rsi
je 0x49a1fd
test rax, rax
je 0x49a1fd
mov rcx, rax
mov qword [rsp + 0x98], rax
call sub.msvcrt.dll_strlen
mov rcx, r15
lea r8, [rax + 1]
mov rdx, r8
mov qword [rsp + 0x90], r8
call fcn.00445ac0
test rax, rax
mov rcx, rax
je 0x49a1fd
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
call sub.msvcrt.dll_memcpy
mov qword [rsi], 0
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0x88]
mov qword [rsi + 8], r15
mov rax, qword [rax + 0xb8]
test rax, rax
je 0x49b1e5
nop word [rax + rax]
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x499f00
mov rax, qword [rsp + 0x220]
mov qword [rdx], rsi
jmp 0x498162
mov rax, qword [rsp + 0x2a8]
mov rcx, r15
movzx eax, byte [rax + 4]
mov edx, eax
mov byte [rsp + 0x90], al
shr dl, 7
movzx edx, dl
call fcn.0048a290
test eax, eax
je 0x4998b6
mov rbx, qword [r15 + 0xf0]
xor ebp, ebp
mov r13d, dword [rbx + 0xc78]
test r13d, r13d
je 0x49887b
mov rcx, qword [rbx + 0x210]
call fcn.00444050
test rax, rax
mov rbp, rax
je 0x4998b6
mov rdx, qword [rbx + 0x208]
xor r8d, r8d
mov rcx, r15
mov rdi, qword [rbx + 0x210]
call fcn.004c93b0
test eax, eax
jne 0x4998ae
mov r8, r15
mov rdx, rdi
mov rcx, rbp
call fcn.004c9110
cmp rdi, rax
jne 0x4998ae
mov rbx, qword [r15 + 0xf0]
jmp 0x49887b
mov eax, dword [rbp + 0x70]
jmp 0x4997a4
mov dword [rsp + 0x80], 1
jmp 0x49868b
movzx ecx, byte [rbx + 0x14]
and ecx, 0xf
cmp cl, 0xa
jne 0x499ff2
mov rcx, qword [rax + 0xf0]
or byte [rcx + 0xc85], 0xc
test edx, 0x800000
je 0x4991c6
mov rax, qword [rax + 0xf0]
or byte [rax + 0xc85], 0x14
jmp 0x4991c6
test byte [r15 + 0x42], 0x20
je 0x499590
xor esi, esi
cmp dword [r12 + 0x3c], 0xffffffff
je 0x4995bb
jmp 0x4995a6
mov dword [rsp + 0x1b8], pe_nt_image_headers64
jmp 0x499c11
mov rcx, qword [r15 + 0xf0]
mov dword [rsp + 0x130], 1
mov dword [rsp + 0x134], 1
jmp 0x4987e5
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [rsp + 0x80], 0
xor ebp, ebp
mov rax, qword [r15 + 0xf0]
mov rcx, qword [rax + 0x58]
mov eax, dword [rax + 0x3c]
imul rax, rax, 0x38
add rax, rcx
jmp 0x49a09c
cmp dword [rax], 0x6474e552
je 0x49a3d0
sub rax, 0x38
lea rdx, [rax + 0x38]
cmp rcx, rdx
jb 0x49a090
mov rcx, r15
call fcn.00447c00
test rbp, rbp
je 0x49a1c6
cmp byte [rbp], 0
je 0x49a1c6
mov rax, qword [r15 + 0xf0]
mov rdx, qword [rsp + 0x2a8]
xor edi, edi
mov r8, rbp
mov rcx, r15
and r13d, 0xb
mov qword [rax + 0x308], rbp
sete dil
mov r9d, edi
mov dword [rsp + 0x130], edi
call fcn.00497980
test eax, eax
mov dword [rsp + 0x134], eax
js 0x497e27
jne 0x497e6c
mov rcx, qword [r15 + 0xf0]
mov rax, qword [rsp + 0x80]
mov qword [rcx + 0x310], rax
mov eax, dword [rcx + 0xc74]
test eax, eax
jne 0x49a13e
mov dword [rsp + 0x80], 1
jmp 0x4987e5
lea rax, [rcx + 0x150]
mov dword [rsp + 0x80], 1
mov qword [rsp + 0xb8], rax
jmp 0x4987f1
test byte [r15 + 0x42], 0x20
jne 0x499509
movzx eax, byte [rbx + 0x16]
movzx edx, byte [r12 + 0x5d]
mov byte [r12 + 0x5a], al
mov eax, dword [rsp + 0x1b8]
and edx, 0xfffffffb
shr eax, 0x17
and eax, 1
shl eax, 2
or eax, edx
mov byte [r12 + 0x5d], al
cmp dword [rsp + 0x80], 1
jne 0x499544
jmp 0x499590
mov rax, qword [0x005ab640]
mov qword [rsp + 0x98], rax
add rax, 0x230
mov qword [rsp + 0x1f0], rax
jmp 0x499095
mov rax, qword [r15 + 0xf0]
mov rbp, qword [rax + 0x308]
test rbp, rbp
je 0x49a1e3
cmp byte [rbp], 0
jne 0x49a0cb
mov rbp, qword [r15]
jmp 0x49a0cb
mov rcx, qword [rsp + 0x118]
call sub.msvcrt.dll_free
jmp 0x4998a9
mov rcx, qword [rsp + 0x218]
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x497e29
mov ecx, dword [rsp + 0x1c4]
test ecx, ecx
je 0x49a224
cmp al, 5
je 0x49945d
test dl, dl
jne 0x4994a5
cmp bpl, 0xa
jne 0x4994a0
test byte [r15 + 0x41], 8
mov eax, 2
cmovne ebp, eax
jmp 0x4994a0
mov r10d, dword [rsp + 0xa0]
test r10d, r10d
jne 0x49a292
or byte [r12 + 0x5b], 4
movzx eax, byte [r13 + 0x5b]
or eax, 4
cmp r13, r12
mov byte [r13 + 0x5b], al
je 0x49aea5
test byte [r13 + 0x5c], 8
jne 0x49a28b
test byte [r12 + 0x5b], 3
jne 0x49aead
test byte [r12 + 0x5d], 0x20
jne 0x49a2d0
xor esi, esi
jmp 0x4992ff
or byte [r12 + 0x5b], 8
movzx eax, byte [r13 + 0x5b]
or eax, 8
cmp r13, r12
mov byte [r13 + 0x5b], al
je 0x49ae93
test byte [r13 + 0x5c], 8
jne 0x49ac80
test byte [r12 + 0x5b], 3
jne 0x49ae9b
test byte [r12 + 0x5d], 0x20
je 0x49ac80
mov rax, r12
mov rax, qword [rax + 0x68]
test byte [rax + 0x5d], 0x20
jne 0x49a2d3
xor esi, esi
cmp dword [rax + 0x3c], 0xffffffff
setne sil
jmp 0x499998
mov rax, qword [rsp + 0x90]
mov r8d, 1
mov rdx, r12
mov rcx, qword [rsp + 0x2a8]
call qword [rax + 0x1b8]
mov esi, dword [rsp + 0x130]
test esi, esi
jne 0x498f94
mov r11d, dword [rsp + 0x1d0]
test r11d, r11d
je 0x498f94
test byte [rsp + 0xa0], 1
je 0x498f94
test byte [r12 + 0x5d], 1
je 0x49af39
mov rax, qword [r15 + 0xf0]
mov dword [rsp + 0x130], 0
test byte [rax + 0xc84], 0x40
je 0x498f94
mov rsi, qword [rax + 0x308]
xor r8d, r8d
mov rax, qword [rsp + 0x88]
mov rcx, rsi
mov rdx, qword [rax + 0xb8]
call fcn.0048fb40
test eax, eax
jne 0x498f94
mov r9, qword [r12 + 8]
lea rcx, [0x005993fa]
mov rdx, rsi
mov rax, qword [rsp + 0x2a8]
mov rbp, qword [rsp + 0x200]
mov rax, qword [rax + 0x20]
mov r8, rbp
call qword [rax + 0x68]
test rbp, rbp
jne 0x499647
mov rax, qword [r15 + 0xf0]
jmp 0x499665
mov rdx, qword [r15 + 0x88]
test rdx, rdx
je 0x49a0a9
mov ecx, dword [rdx + 0x20]
test cl, 1
je 0x49a410
mov r8, qword [rdx + 0x28]
mov r9, qword [rax + 0x10]
cmp r8, r9
jb 0x49a410
add r8, qword [rdx + 0x38]
add r9, qword [rax + 0x28]
cmp r9, r8
jb 0x49a410
or ecx, 8
mov dword [rdx + 0x20], ecx
nop dword [rax + rax]
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x49a3e0
jmp 0x49a0a9
mov r14, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
mov rax, qword [rsp + 0x2a8]
test byte [rax + 1], 2
je 0x49a5b0
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
mov byte [rsp + 0x90], al
and eax, 3
cmp al, 2
je 0x49a5b0
test byte [r15 + 0x42], 0x20
jne 0x49a5b0
test byte [rsp + 0x134], 1
jne 0x49a5b0
cmp qword [rsp + 0xd8], 0
je 0x49a5b0
mov rax, qword [r14 + 0x300]
mov edx, 0x20
mov r12, qword [r15 + 0x88]
cmp byte [rax + 0xa], 0x20
mov eax, 8
cmovne eax, edx
test r12, r12
mov esi, eax
mov rax, qword [r15 + 0xf0]
mov rbx, qword [rax + 0x2f8]
je 0x49a5b0
mov rdi, qword [rsp + 0xf8]
jmp 0x49a4de
mov r12, qword [r12 + 0x10]
test r12, r12
je 0x49a5b0
mov eax, dword [r12 + 0x20]
test al, 4
je 0x49a4d0
mov edx, dword [r12 + 0x88]
test edx, edx
je 0x49a4d0
test ah, 0x80
jne 0x49a4d0
mov rcx, qword [rsp + 0x2a8]
test byte [rcx + 1], 0x20
je 0x49a50b
test ah, 0x20
jne 0x49a4d0
mov rax, qword [rsp + 0x2a8]
xor r9d, r9d
xor r8d, r8d
mov rdx, r12
mov rcx, r15
movzx eax, byte [rax + 3]
mov byte [rsp + 0x90], al
shr al, 2
and eax, 1
mov dword [rsp + 0x20], eax
call fcn.00496f60
test rax, rax
mov r9, rax
je 0x49986c
mov r8d, dword [r12 + 0x88]
mov rdx, rax
mov ecx, esi
imul r8, r8, 0x18
add r8, rax
cmp rax, r8
jae 0x49a587
mov rax, qword [rdx + 8]
shr rax, cl
mov eax, eax
cmp rax, rdi
jb 0x49a57c
sub rax, rdi
mov rax, qword [rbx + rax*8]
test rax, rax
je 0x49a57c
or byte [rax + 0x19], 1
add rdx, 0x18
cmp rdx, r8
jb 0x49a55e
mov esi, ecx
mov rax, qword [r12 + 0xe0]
cmp r9, qword [rax + 0x98]
je 0x49a4d0
mov rcx, r9
call sub.msvcrt.dll_free
jmp 0x49a4d0
test rbp, rbp
je 0x49a5bd
mov rcx, rbp
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0xe8]
test rax, rax
je 0x49a5d2
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [r15 + 0xf0]
test byte [rax + 0xc84], 0x40
jne 0x49b028
mov rdi, qword [rsp + 0x118]
test rdi, rdi
je 0x49a61b
mov rdx, qword [rsp + 0x2a8]
mov r8d, 2
mov rcx, r15
call qword [r14 + 0xf8]
test eax, eax
je 0x49b214
mov rcx, rdi
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
mov byte [rsp + 0x90], al
and eax, 3
cmp al, 2
je 0x49ae06
cmp qword [rsp + 0x100], 0
je 0x49ae06
xor r12d, r12d
cmp qword [rsp + 0x128], 0
jne 0x49a675
jmp 0x49adf9
mov rax, qword [rsp + 0x128]
add r12, 1
cmp r12, rax
je 0x49adf9
mov rax, qword [rsp + 0x100]
mov edx, 0x40
mov rdi, qword [rax + r12*8]
mov rsi, qword [rdi + 8]
mov rcx, rsi
call sub.msvcrt.dll_strchr
test rax, rax
je 0x49a660
movzx ecx, byte [rdi + 0x18]
lea edx, [rcx - 3]
cmp dl, 1
ja 0x49a660
sub rax, rsi
lea rcx, [rax + 1]
mov rbx, rax
call fcn.00444050
test rax, rax
mov rbp, rax
je 0x49b5c8
mov rdx, qword [rdi + 8]
mov r8, rbx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov byte [rbp + rbx], 0
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rsp + 0x88]
mov dword [rsp + 0x20], 0
mov rdx, rbp
call fcn.004ca5c0
test rax, rax
mov rbx, rax
je 0x49a705
movzx eax, byte [rdi + 0x18]
cmp byte [rbx + 0x18], al
je 0x49b27e
mov rcx, rbp
call sub.msvcrt.dll_free
jmp 0x49a660
mov rcx, qword [rbx]
mov qword [rsp + 0x98], rdx
call fcn.00444810
mov r9, qword [rsp + 0x98]
mov rdx, r15
mov ebp, eax
jmp 0x4993af
movzx edx, word [rax + 0x24]
and dx, 0x380
sub dx, 0x100
test dx, 0xfe80
je 0x49994b
mov dword [rsp + 0xc8], 1
mov rax, rcx
add rax, 0x118
mov qword [rsp + 0x1f0], rax
mov dword [rbx + 0x18], 0
jmp 0x498be4
mov rax, qword [rsp + 0x2a8]
mov rdi, qword [r15 + 8]
mov rax, qword [rax + 0x50]
cmp qword [rax + 8], rdi
jne 0x4987bd
mov rax, qword [rsp + 0x88]
mov eax, dword [rax + 0x4c]
test eax, eax
mov dword [rsp + 0x134], eax
jne 0x4987bd
mov rdx, qword [rsp + 0x2a8]
mov rcx, r15
call fcn.00494770
test eax, eax
je 0x497e27
xor eax, eax
mov rcx, qword [r15 + 0xf0]
mov dword [rsp + 0x130], 1
mov dword [rsp + 0x80], eax
jmp 0x4987e5
test rax, rax
je 0x499a37
mov rax, qword [r15 + 8]
mov dword [rsp + 0x15c], r11d
mov rcx, qword [rsp + 0x2a8]
mov rax, qword [rax + 0x368]
mov rcx, qword [rcx + 0x28]
mov qword [rsp + 0xe0], rax
movzx eax, byte [rax + 0x38c]
and eax, 1
mov byte [rsp + 0x158], al
mov rax, r13
sub rax, rbp
lea edx, [rax + 1]
mov qword [rsp + 0xd0], rax
call fcn.00443950
test rax, rax
mov rcx, rax
je 0x49985c
mov r8, qword [rsp + 0xd0]
mov rdx, rbp
mov qword [rsp + 0x150], rax
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x150]
mov r9, rbx
mov dword [rsp + 0x1d4], 0
mov rdx, qword [rsp + 0xc8]
mov dword [rsp + 0x1d8], 0
mov rax, qword [rsp + 0xd0]
mov dword [rsp + 0x1e4], 1
mov r8, rcx
mov byte [rcx + rax], 0
mov rcx, r15
mov qword [rsp + 0x220], rdx
lea rdx, [rsp + 0x1e4]
mov qword [rsp + 0x188], rdx
mov qword [rsp + 0x70], rdx
lea rdx, [rsp + 0x1d8]
mov qword [rsp + 0x170], rdx
mov qword [rsp + 0x68], rdx
lea rdx, [rsp + 0x1d4]
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0x60], rdx
lea rdx, [rsp + 0x1e0]
mov qword [rsp + 0x180], rdx
mov qword [rsp + 0x58], rdx
lea rdx, [rsp + 0x1dc]
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x50], rdx
lea rdx, [rsp + 0x200]
mov qword [rsp + 0x190], rdx
mov qword [rsp + 0x38], rdx
lea rdx, [rsp + 0x210]
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x30], rdx
lea rdx, [rsp + 0x208]
mov qword [rsp + 0x198], rdx
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 0x220]
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x2a8]
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
call fcn.00495560
test eax, eax
je 0x49985c
mov r11d, dword [rsp + 0x15c]
mov ecx, dword [rsp + 0x1dc]
movzx eax, byte [rsp + 0x158]
and r11d, 0x40
test ecx, ecx
mov dword [rsp + 0x15c], r11d
mov dword [rsp + 0x158], eax
jne 0x49aaf0
mov r9, qword [rsp + 0x210]
test byte [r9 + 0x5b], 2
je 0x49aa13
mov rax, qword [r9 + 0x70]
test rax, rax
je 0x49b6e9
mov rdx, qword [rax + 8]
xor eax, eax
mov qword [rsp + 0x160], r9
cmp byte [r13 + 1], 0x40
sete al
lea rcx, [r13 + rax + 1]
call sub.msvcrt.dll_strcmp
mov r9, qword [rsp + 0x160]
test eax, eax
jne 0x49aaf0
mov edx, dword [rsp + 0x1e0]
movzx eax, byte [r9 + 0x18]
test edx, edx
jne 0x49b547
mov rcx, qword [rsp + 0x2a8]
movzx ecx, byte [rcx]
mov edx, ecx
mov byte [rsp + 0x160], cl
and edx, 3
cmp dl, 2
je 0x49aaca
cmp al, 3
mov qword [rsp + 0x218], r9
je 0x49b8e1
lea rax, [rsp + 0x218]
mov r8, qword [rsp + 0x150]
mov qword [rsp + 0x30], rbp
mov r9d, 0x2000
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x158]
mov rdx, r15
mov rcx, qword [rsp + 0x2a8]
mov dword [rsp + 0x40], eax
xor eax, eax
mov dword [rsp + 0x38], eax
xor eax, eax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
add rax, 0x348
mov qword [rsp + 0x20], rax
call fcn.004cb5d0
test eax, eax
je 0x49985c
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x210], rax
mov r8, qword [rsp + 0x210]
cmp byte [r8 + 0x18], 7
jne 0x49aae5
mov r8, qword [r8 + 0x28]
mov qword [rsp + 0x210], r8
cmp byte [r8 + 0x18], 6
je 0x49b761
mov rcx, rbp
call sub.msvcrt.dll_strlen
mov rcx, qword [rsp + 0x2a8]
mov edx, eax
mov qword [rsp + 0x160], rax
mov rcx, qword [rcx + 0x28]
call fcn.00443950
test rax, rax
je 0x49985c
mov r8, qword [rsp + 0xd0]
mov rdx, rbp
mov rcx, rax
mov qword [rsp + 0x150], rax
call sub.msvcrt.dll_memcpy
mov r10, qword [rsp + 0xd0]
lea rdx, [r13 + 1]
mov rax, qword [rsp + 0x150]
mov r8, qword [rsp + 0x160]
lea rcx, [rax + r10]
sub r8, r10
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0xc8]
mov r9, rbx
mov qword [rsp + 0x48], 0
mov r13, qword [rsp + 0x150]
mov qword [rsp + 0x40], 0
mov rdx, qword [rsp + 0x2a8]
mov dword [rsp + 0x1d4], 0
mov dword [rsp + 0x1d8], 0
mov qword [rsp + 0x220], rcx
mov rcx, qword [rsp + 0x188]
mov r8, r13
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x168]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x180]
mov qword [rsp + 0x58], rcx
mov rcx, qword [rsp + 0x178]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x1a0]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x1a8]
mov qword [rsp + 0x20], rcx
mov rcx, r15
call fcn.00495560
test eax, eax
je 0x49985c
mov eax, dword [rsp + 0x1dc]
test eax, eax
jne 0x499a37
cmp dword [rsp + 0x1e0], 0
mov rax, qword [rsp + 0x210]
je 0x49b5e4
movzx eax, byte [rax + 0x18]
sub eax, 3
cmp al, 1
jbe 0x499a37
lea rcx, str._pB:_unexpected_redefinition_of_indirect_versioned_symbol___s
mov r8, r13
mov rdx, r15
call fcn.0043f660
jmp 0x499a37
xor esi, esi
jmp 0x4999a9
mov ecx, 0x11
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
call fcn.0043f820
jmp 0x49986c
or eax, 2
test al, 8
mov byte [r12 + 0x5b], al
je 0x49acbd
and eax, 0xfffffff3
or eax, 4
mov byte [r12 + 0x5b], al
cmp r13, r12
je 0x49acc9
test byte [r13 + 0x5c], 8
jne 0x49ac80
mov rax, qword [rsp + 0x2a8]
movzx eax, byte [rax]
not eax
test al, 3
je 0x49ae9b
xor esi, esi
test byte [r12 + 0x5b], 0xc
setne sil
jmp 0x4999a9
test r8, r8
je 0x49941c
cmp rdx, r8
je 0x49941c
mov r9d, dword [rsp + 0x1bc]
test r9d, r9d
jne 0x49941c
mov qword [rsp + 0x20], rdx
mov r9, qword [rsp + 0x200]
lea rcx, str.warning:_size_of_symbol___s_changed_from__llu_in__pB_to__llu_in__pB
mov rdx, qword [rsp + 0x1f8]
mov qword [rsp + 0x28], r15
call fcn.0043f660
mov rdx, qword [rbx + 8]
jmp 0x49941c
movzx r13d, byte [rsp + 0xa0]
call sub.msvcrt.dll_free
test rsi, rsi
je 0x49b921
mov qword [rsp + 0x208], rsi
mov rax, qword [rsp + 0x88]
mov rax, qword [rax + 0x158]
test rax, rax
je 0x49b480
nop dword [rax + rax]
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x49ad80
mov qword [rdx], rsi
jmp 0x49a077
mov rcx, qword [rsp + 0x2a8]
mov rdx, r12
call fcn.00494c10
test eax, eax
je 0x49985c
test byte [r12 + 0x5d], 0x20
jne 0x49b494
mov r10d, dword [rsp + 0x130]
test r10d, r10d
je 0x49af1e
mov dword [rsp + 0x130], esi
jmp 0x498f94
mov rcx, qword [r12 + 0x28]
mov r9, rdx
mov dword [rsp + 0x20], eax
mov edx, r11d
mov qword [rsp + 0x28], rcx
lea rcx, str.warning:_alignment__u_of_common_symbol___s_in__pB_is_greater_than_the_alignment___u__of_its_section__pA
call fcn.0043f660
jmp 0x4993ef
mov rcx, qword [rsp + 0x100]
call sub.msvcrt.dll_free
cmp qword [rsp + 0x138], 0
je 0x49af6c
mov rdi, qword [rsp + 0xd8]
shl rdi, 3
mov rcx, rdi
call fcn.00444050
test rax, rax
mov rsi, rax
je 0x497e27
mov rax, qword [r15 + 0xf0]
mov rbp, qword [rax + 0x2f8]
add rdi, rbp
cmp rbp, rdi
jae 0x49b30b
mov r13, rsi
xor ebx, ebx
jmp 0x49ae63
add rbp, 8
cmp rbp, rdi
jae 0x49b30d
mov r12, qword [rbp]
test r12, r12
je 0x49ae56
cmp byte [r12 + 0x18], 3
jne 0x49ae56
movzx ecx, byte [r12 + 0x58]
call qword [r14 + 0x2c8]
test eax, eax
jne 0x49ae56
mov qword [r13], r12
add rbx, 1
add r13, 8
jmp 0x49ae56
test al, 3
je 0x49a2c4
mov esi, 1
jmp 0x4999a9
test al, 3
je 0x49a283
mov esi, 1
jmp 0x4992ff
mov qword [rsp + 0x120], 0
xor ecx, ecx
jmp 0x4988f1
mov r9d, dword [rsp + 0xb0]
mov dword [rsp + 0x20], edx
lea rcx, str._pB:__s:_invalid_version__u__max__d_
mov rdx, r15
mov r8, qword [rsp + 0x1f8]
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
call fcn.0043f660
mov ecx, 0x11
call fcn.0043f820
jmp 0x49986c
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x49942f
jmp 0x4993f8
mov r9d, dword [rsp + 0x1d0]
test r9d, r9d
je 0x49af39
test byte [rsp + 0xa0], 1
jne 0x4995f1
mov dword [rsp + 0x130], 0
jmp 0x498f94
mov r8d, 0x101401
jmp 0x499845
and eax, 0xfffffff9
or eax, 4
mov byte [r12 + 0x5c], al
jmp 0x49a7f1
mov rcx, rsi
call sub.msvcrt.dll_free
mov rax, qword [r14 + 0xf0]
test rax, rax
je 0x49af8d
mov rdx, qword [rsp + 0x2a8]
mov rcx, r15
call rax
test eax, eax
je 0x497e27
mov r11d, dword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
test r11d, r11d
mov eax, dword [rax + 0x40]
jne 0x49afc6
mov rdi, qword [rsp + 0x2a8]
test byte [rdi + 4], 0x20
jne 0x49afc6
sub eax, 1
jne 0x497e6c
test byte [rdi + 1], 0x20
je 0x49b860
mov rax, qword [rsp + 0x88]
cmp dword [rax + 0x40], 1
jne 0x497e6c
test byte [rsp + 0x130], 1
je 0x497e6c
mov edx, 0x10
mov rcx, r15
call fcn.00445ac0
test rax, rax
je 0x497e27
mov rdi, qword [rsp + 0x88]
movq xmm1, r15
movq xmm0, qword [rdi + 0x170]
punpcklqdq xmm0, xmm1
movups xmmword [rax], xmm0
mov qword [rdi + 0x170], rax
jmp 0x497e6c
mov rcx, qword [rax + 0x2f8]
xor edx, edx
mov rax, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
lea r8, [rax*8]
call sub.msvcrt.dll_memset
mov rdi, qword [rsp + 0x88]
mov rdx, rsi
mov rcx, qword [rsp + 0x148]
lea rbp, [rsi + rbx]
mov r8, rbx
xor esi, esi
movq qword [rdi + 0x18], xmm7
mov qword [rdi], rcx
call sub.msvcrt.dll_memcpy
mov rcx, qword [rdi + 0x90]
mov rdx, r13
movups xmmword [rdi + 0x28], xmm6
call fcn.004a6cf0
mov rcx, r13
call sub.msvcrt.dll_free
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x49b198
mov r12, rsi
mov rsi, qword [rsp + 0x88]
mov rax, qword [rsi]
mov rdi, qword [rax + r12*8]
test rdi, rdi
je 0x49b18a
mov qword [rsp + 0x80], r12
mov r12, rbp
jmp 0x49b0ed
movzx eax, byte [rcx + 0x19]
and ebx, 1
add ebx, ebx
and eax, 0xfffffffd
or eax, ebx
mov byte [rcx + 0x19], al
mov rdi, qword [rdi]
test rdi, rdi
je 0x49b17f
movzx ecx, byte [rdi + 0x18]
mov rax, rdi
cmp cl, 7
jne 0x49b101
mov rax, qword [rdi + 0x28]
movzx ecx, byte [rax + 0x18]
xor r13d, r13d
xor ebp, ebp
cmp cl, 5
jne 0x49b116
mov rcx, qword [rax + 0x28]
mov rbp, qword [rax + 0x30]
mov r13d, dword [rcx]
mov r8d, dword [rsi + 0x20]
mov rdx, r12
mov rcx, rdi
movzx ebx, byte [rax + 0x19]
call sub.msvcrt.dll_memcpy
mov r8d, dword [rsi + 0x20]
mov rcx, rdi
movzx eax, byte [rdi + 0x18]
shr bl, 1
and ebx, 1
add r12, r8
cmp al, 7
je 0x49b163
cmp al, 5
jne 0x49b0d0
cmp qword [rcx + 0x30], rbp
jae 0x49b14e
mov qword [rcx + 0x30], rbp
mov rax, qword [rcx + 0x28]
cmp dword [rax], r13d
jae 0x49b0d0
mov dword [rax], r13d
jmp 0x49b0d0
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov eax, dword [rsi + 0x20]
mov rcx, qword [rdi + 0x28]
add r12, rax
movzx eax, byte [rcx + 0x18]
jmp 0x49b140
mov rbp, r12
mov r12, qword [rsp + 0x80]
add r12, 1
cmp r12d, dword [rsi + 0x18]
jb 0x49b0b0
mov rdx, qword [rsp + 0x2a8]
mov r8d, 1
mov rcx, r15
call qword [r14 + 0xf8]
test eax, eax
jne 0x49b4f6
mov rcx, qword [rsp + 0x118]
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x497e27
mov rcx, rax
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x497e29
mov rax, qword [rsp + 0x88]
lea rdx, [rax + 0xb8]
jmp 0x499f0b
lea rdx, [rsp + 0x210]
jmp 0x499e33
cmp r13, r12
jne 0x4992d3
jmp 0x4992de
mov qword [rsp + 0xe8], 0
xor ebp, ebp
jmp 0x499877
mov rax, qword [rsp + 0xc0]
sub rax, rbx
sar rax, 5
lea rcx, [rax*8 + 8]
call fcn.00444050
test rax, rax
mov qword [rsp + 0x100], rax
jne 0x499570
jmp 0x49985c
mov rdx, qword [rsp + 0x1f8]
mov qword [rsp + 0x20], r15
lea rcx, str.warning:_type_of_symbol___s_changed_from__d_to__d_in__pB
call fcn.0043f660
jmp 0x4994a0
mov rax, qword [rdi + 0x30]
cmp qword [rbx + 0x30], rax
jne 0x49a705
mov rax, qword [rdi + 0x28]
cmp qword [rbx + 0x28], rax
jne 0x49a705
mov rcx, qword [rsp + 0x2a8]
mov r8d, 1
mov rdx, rbx
call qword [r14 + 0x1b8]
mov rdx, rdi
mov byte [rbx + 0x18], 6
mov rcx, qword [rsp + 0x2a8]
mov qword [rbx + 0x28], rdi
mov r8, rbx
call qword [r14 + 0x1b0]
mov rax, qword [r15 + 0xf0]
mov rdx, qword [rax + 0x2f8]
test rdx, rdx
je 0x49a705
xor eax, eax
jmp 0x49b2ee
add rax, 1
cmp qword [rsp + 0xd8], rax
je 0x49a705
cmp rbx, qword [rdx + rax*8]
jne 0x49b2ea
mov qword [rdx + rax*8], rdi
jmp 0x49a705
xor ebx, ebx
lea r9, [0x0048f470]
mov r8d, 8
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll_qsort
mov rbp, qword [rsp + 0x138]
jmp 0x49b339
test rbp, rbp
je 0x49af64
mov rdi, rbp
mov rbp, qword [rbp + 0x68]
movzx eax, byte [rdi + 0x18]
mov qword [rdi + 0x68], 0
sub eax, 3
cmp al, 1
ja 0x49b330
test rbx, rbx
mov r10, qword [rdi + 0x28]
mov r9, qword [rdi + 0x30]
je 0x49b330
mov rdx, rbx
xor ecx, ecx
jmp 0x49b38b
jne 0x49b382
mov r8, qword [r8 + 0x28]
mov r11d, dword [r8 + 8]
cmp dword [r10 + 8], r11d
js 0x49b39c
je 0x49b3a1
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x49b330
lea rax, [rcx + rdx]
shr rax, 1
mov r8, qword [rsi + rax*8]
cmp r9, qword [r8 + 0x30]
jns 0x49b370
mov rdx, rax
jmp 0x49b386
cmp rcx, rdx
jne 0x49b3c0
jmp 0x49b330
mov r11, qword [rsi + rax*8]
cmp r10, qword [r11 + 0x28]
jne 0x49b3cc
cmp r9, qword [r11 + 0x30]
jne 0x49b3cc
mov r8, rax
add rax, 1
cmp rax, rdx
jne 0x49b3b0
sub rcx, 1
cmp r8, rcx
je 0x49b330
mov r12, qword [rsi + r8*8]
cmp r10, qword [r12 + 0x28]
jne 0x49b330
cmp r9, qword [r12 + 0x30]
jne 0x49b330
sub r8, 1
cmp r12, rdi
je 0x49b3d0
or byte [rdi + 0x5d], 0x20
mov qword [rdi + 0x68], r12
mov rdx, r12
cmp qword [r12 + 0x68], 0
jne 0x49b4d2
cmp dword [rdi + 0x3c], 0xffffffff
mov qword [rdx + 0x68], rdi
mov eax, dword [r12 + 0x3c]
je 0x49b5a4
add eax, 1
jne 0x49b330
mov rcx, qword [rsp + 0x2a8]
mov rdx, r12
call fcn.00494c10
test eax, eax
je 0x49b471
cmp dword [r12 + 0x3c], 0xffffffff
je 0x49b330
cmp dword [rdi + 0x3c], 0xffffffff
jne 0x49b330
mov rcx, qword [rsp + 0x2a8]
mov rdx, rdi
call fcn.00494c10
test eax, eax
jne 0x49b330
mov rcx, rsi
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x497e29
mov rax, qword [rsp + 0x88]
lea rdx, [rax + 0x158]
jmp 0x49ad8b
mov rax, r12
mov rax, qword [rax + 0x68]
test byte [rax + 0x5d], 0x20
jne 0x49b497
cmp dword [rax + 0x3c], 0xffffffff
jne 0x49adb7
mov rdx, r12
mov rdx, qword [rdx + 0x68]
test byte [rdx + 0x5d], 0x20
jne 0x49b4ae
mov rcx, qword [rsp + 0x2a8]
call fcn.00494c10
test eax, eax
jne 0x49adb7
jmp 0x49985c
mov rax, r12
mov rdx, rax
mov rax, qword [rax + 0x68]
cmp r12, rax
jne 0x49b4d5
jmp 0x49b413
and eax, 0xfffffff9
or eax, 2
mov byte [r12 + 0x5c], al
jmp 0x499a37
mov rcx, qword [rsp + 0x118]
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rax + 0x10]
call fcn.004ea680
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x497e6c
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x497e6c
lea rdx, [rsp + 0x208]
jmp 0x498253
sub eax, 6
cmp al, 1
ja 0x49b566
mov r9, qword [r9 + 0x28]
movzx eax, byte [r9 + 0x18]
sub eax, 6
cmp al, 1
jbe 0x49b54e
mov qword [rsp + 0x210], r9
movzx eax, byte [r12 + 0x5b]
mov byte [r12 + 0x18], 6
mov qword [r12 + 0x28], r9
test al, 8
je 0x49b597
and eax, 0xfffffff7
mov byte [r12 + 0x5b], al
movzx eax, byte [r9 + 0x5b]
or eax, 4
test al, 3
mov byte [r9 + 0x5b], al
jne 0x49b834
mov qword [rsp + 0x210], r12
jmp 0x49aaca
add eax, 1
je 0x49b330
jmp 0x49b459
lea rcx, str..._.._.._src_binutils_2.32_bfd_elflink.c
mov edx, 0x13cc
call fcn.0043f7a0
jmp 0x499694
test r13, r13
je 0x49b5d5
mov rcx, r13
call sub.msvcrt.dll_free
xor eax, eax
mov qword [rsp + 0xe8], rax
jmp 0x49989c
mov qword [rsp + 0x218], rax
xor r13d, r13d
mov r9d, 0x2000
mov rdx, r15
lea rax, [rsp + 0x218]
mov r8, qword [rsp + 0x150]
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x158]
mov rcx, qword [rsp + 0x2a8]
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x40], eax
xor eax, eax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
add rax, 0x348
mov qword [rsp + 0x20], rax
call fcn.004cb5d0
test eax, eax
je 0x49985c
mov rbp, qword [rsp + 0x218]
cmp byte [rbp + 0x18], 6
mov qword [rsp + 0x210], rbp
jne 0x499a37
mov rax, qword [rsp + 0xe0]
mov rdx, r12
mov r8, rbp
mov rcx, qword [rsp + 0x2a8]
call qword [rax + 0x1b0]
movzx eax, byte [r12 + 0x5d]
movzx edx, byte [rbp + 0x5d]
or edx, eax
and eax, 0xfffffffe
and edx, 1
or eax, edx
mov byte [r12 + 0x5d], al
movzx eax, byte [rbp + 0x5c]
mov edx, eax
or edx, dword [r12 + 0x5c]
and eax, 0x7f
and edx, 0xffffff80
or eax, edx
test esi, esi
mov byte [rbp + 0x5c], al
jne 0x49b6df
cmp dword [rsp + 0x15c], 0
jne 0x49b970
mov rax, qword [rsp + 0x2a8]
test byte [rax], 2
jne 0x49b6df
test byte [rbp + 0x5b], 4
je 0x499a37
mov esi, 1
jmp 0x499a37
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rax + 0xe0]
test rcx, rcx
je 0x49aa13
mov rdx, qword [r9 + 8]
lea r8, [rsp + 0x218]
mov qword [rsp + 0x160], r9
call fcn.004cdaa0
mov r9, qword [rsp + 0x160]
test rax, rax
mov qword [r9 + 0x70], rax
je 0x49aa13
cmp dword [rsp + 0x218], 0
je 0x49a9e3
mov rax, qword [rsp + 0xe0]
mov r8d, 1
mov rdx, r9
mov rcx, qword [rsp + 0x2a8]
call qword [rax + 0x1b8]
jmp 0x49aaf0
mov rdx, qword [r8 + 0x28]
mov qword [rsp + 0x160], r8
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x2a8]
mov qword [rsp + 0x150], rdx
call qword [rax + 0x1b0]
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x160]
movzx eax, byte [rdx + 0x5d]
mov ecx, eax
or cl, byte [r8 + 0x5d]
and eax, 0xfffffffe
and ecx, 1
or eax, ecx
mov byte [rdx + 0x5d], al
movzx eax, byte [r8 + 0x5c]
mov ecx, eax
or ecx, dword [rdx + 0x5c]
and eax, 0x7f
mov edx, ecx
and edx, 0xffffff80
or eax, edx
test esi, esi
mov byte [r8 + 0x5c], al
jne 0x49aaf0
cmp dword [rsp + 0x15c], 0
jne 0x49b851
mov rax, qword [rsp + 0x2a8]
mov esi, 1
test byte [rax], 2
jne 0x49aaf0
xor esi, esi
test byte [r8 + 0x5b], 0xc
setne sil
jmp 0x49aaf0
mov r9, qword [r12 + 8]
xor r8d, r8d
mov rax, qword [r15 + 0xf0]
lea rcx, [0x005993fa]
mov rsi, qword [rax + 0x308]
mov rax, qword [rsp + 0x2a8]
mov rdx, rsi
mov rax, qword [rax + 0x20]
call qword [rax + 0x68]
jmp 0x49a3c3
mov rcx, qword [rsp + 0x2a8]
mov rdx, r9
call fcn.00494c10
test eax, eax
jne 0x49b597
jmp 0x49985c
movzx eax, byte [r8 + 0x5b]
mov esi, eax
and esi, 1
jmp 0x49aaf0
lea rdx, [0x00599428]
mov rcx, r15
call fcn.00447c40
test rax, rax
mov rsi, rax
je 0x49afc6
mov rax, qword [0x005ab640]
xor r10d, r10d
mov rbx, qword [r15 + 0x88]
mov qword [rsp + 0x220], r10
lea rbp, [0x00599431]
lea rdi, [rax + 0x230]
jmp 0x49b8b0
cmp al, 0x2e
je 0x49b97f
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x49afc6
mov r12, qword [rbx]
mov r8d, 5
mov rdx, rbp
mov rcx, r12
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x49b8ac
movzx eax, byte [r12 + 5]
test al, al
je 0x49b996
jmp 0x49b8a4
mov rax, qword [r9 + 0x28]
mov rax, qword [rax + 0xf0]
test byte [rax + 0x42], 0x20
je 0x49aa57
mov byte [r9 + 0x18], 1
mov qword [r9 + 0x28], rax
jmp 0x49aa57
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x110]
mov r9d, dword [rsp + 0xb0]
jmp 0x499b9d
mov rsi, qword [rsp + 0x208]
test rsi, rsi
je 0x49a077
jmp 0x49ad60
mov r8, qword [rsp + 0x1f8]
mov r12, rbp
mov rdx, r12
mov r13, qword [rsp + 0x110]
lea rcx, str._pB:_undefined_reference_to_symbol__s
mov rbp, qword [rsp + 0x108]
call fcn.0043f660
mov ecx, 0xb
call fcn.0043f820
jmp 0x49986c
test byte [rbp + 0x5b], 1
jne 0x49b6df
jmp 0x499a37
movzx edx, byte [r12 + 6]
mov rax, qword [0x005ab6f0]
test byte [rax + rdx*2], 4
je 0x49b8ac
test byte [rbx + 0x22], 0x80
jne 0x49b8ac
cmp qword [rbx + 0x68], rdi
je 0x49b8ac
mov r12, qword [rbx + 0xe0]
mov r9, rsi
mov r8, rbx
mov rcx, r15
mov rax, qword [rsp + 0x88]
lea rdx, [rax + 0xf0]
lea rax, [rsp + 0x220]
mov qword [rsp + 0x28], rax
lea rax, [r12 + 0xd8]
mov qword [rsp + 0x20], rax
call fcn.004cf390
test eax, eax
je 0x497e27
cmp qword [r12 + 0xd8], 0
je 0x49b8ac
movzx eax, word [rbx + 0x24]
and ax, 0xfc7f
or al, 0x80
mov word [rbx + 0x24], ax
jmp 0x49b8ac