Function at 0x45c9c0
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, 0xd8
mov rdi, qword [rsp + 0x148]
mov rax, qword [rsp + 0x140]
mov r11, qword [rsp + 0x178]
mov r14, qword [rsp + 0x150]
mov rsi, rcx
mov qword [rsp + 0x48], rdx
mov r12, r8
mov rbx, r9
mov qword [rsp + 0xa0], rdi
mov rdi, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x68], rax
mov r13, qword [rsp + 0x160]
mov qword [rsp + 0x98], r11
mov qword [rsp + 0x60], rdi
mov rdi, qword [rsp + 0x168]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x88], rdi
mov rdi, qword [rsp + 0x180]
mov qword [rsp + 0x70], rdi
mov rdi, qword [rsp + 0x188]
mov qword [rsp + 0x78], rdi
mov rdi, qword [rsp + 0x190]
mov r10d, dword [rdi]
mov dword [rcx], 0
mov rcx, qword [rax]
mov dword [r11], 0
movzx eax, byte [r9 + 0x14]
mov dword [rsp + 0xb0], r10d
mov qword [rsp + 0x50], rcx
shr al, 4
mov byte [rsp + 0x80], al
mov rax, qword [0x00505dc0]
add rax, 0x118
cmp rcx, rax
je 0x45ce90
mov rcx, qword [rdx + 0x28]
xor r9d, r9d
mov r8d, 1
mov rdx, r12
mov dword [rsp + 0x20], 0
call fcn.00492270
mov rbp, rax
test rbp, rbp
je 0x45ce70
mov rax, qword [rsi + 8]
mov qword [r14], rbp
movzx r15d, byte [rbp + 0x5c]
mov rax, qword [rax + 0x360]
mov r9d, r15d
and r9d, 6
cmp r9b, 2
mov byte [rsp + 0x84], r9b
mov qword [rsp + 0x58], rax
je 0x45cb58
mov edx, 0x40
mov rcx, r12
call sub.msvcrt.dll_strrchr
test rax, rax
mov r14, rax
je 0x45d435
movzx r9d, byte [rsp + 0x84]
test r9b, r9b
jne 0x45cb4d
cmp r12, rax
jae 0x45d4b1
cmp byte [rax - 1], 0x40
je 0x45d4b1
mov r8d, r15d
or r8d, 6
mov byte [rbp + 0x5c], r8b
cmp byte [r14 + 1], 0
jne 0x45cf05
xor r14d, r14d
movzx r12d, byte [rbp + 0x18]
mov r15, rbp
mov edx, dword [rdi]
lea eax, [r12 - 6]
cmp al, 1
ja 0x45d4f0
mov r15, qword [r15 + 0x28]
movzx r12d, byte [r15 + 0x18]
lea eax, [r12 - 6]
cmp al, 1
jbe 0x45cb72
test edx, edx
jne 0x45cbbb
cmp rbp, r15
je 0x45cbb5
test r12b, r12b
je 0x45cbb5
movzx eax, byte [r15 + 0x5c]
mov edx, eax
and edx, 6
cmp dl, 6
je 0x45cf24
movzx edx, byte [rbp + 0x5c]
and edx, 6
cmp dl, 6
je 0x45cf24
mov dword [rdi], 1
cmp r12b, 5
ja case.0x45cbd3.0
lea rdx, [0x004df400]
movsxd rax, dword [rdx + r12*4]
add rax, rdx
jmp rax
mov rax, qword [r15 + 0x28]
mov rdx, qword [rax + 8]
mov qword [rsp + 0xa8], rdx
mov r12, qword [rdx + 0xf0]
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x45cbfd
mov eax, dword [rax]
mov dword [rdx], eax
mov rax, qword [rsp + 0x60]
cmp qword [rax], 0
je 0x45cee2
movzx eax, byte [r15 + 0x18]
sub eax, 2
test al, 0xfd
sete r14b
test r13, r13
movzx eax, r14b
mov dword [rsp + 0x84], eax
je 0x45cc2e
mov dword [r13], eax
mov rcx, qword [rsp + 0x48]
mov r8, rbx
mov rdx, r15
call fcn.00457870
mov eax, dword [rsi + 0x40]
shr eax, 5
and eax, 0xfffff
mov r13d, eax
and r13d, 0x40
je 0x45cc7c
mov rdx, qword [0x00505dc0]
add rdx, 0x118
cmp qword [rsp + 0x50], rdx
je 0x45d4d0
mov r10d, dword [rdi]
test r10d, r10d
je 0x45cc78
or byte [r15 + 0x5c], 0x80
or byte [rbp + 0x5c], 0x80
movzx edx, byte [r15 + 0x18]
test dl, dl
je 0x45d2e0
cmp byte [rsp + 0x80], 2
sete byte [rsp + 0xce]
test r13d, r13d
setne byte [rsp + 0x60]
movzx edi, byte [rsp + 0x60]
cmp rsi, r12
mov dword [rsp + 0xc0], edi
je 0x45d483
test r12, r12
je 0x45d500
mov ecx, dword [r12 + 0x40]
shr ecx, 5
and ecx, 0xfffff
mov r8d, ecx
xor eax, ecx
shr r8d, 6
and r8d, 1
test eax, 0x10000
movzx edi, r8b
mov dword [rsp + 0xb4], edi
je 0x45ccfc
cmp byte [rsp + 0x60], r8b
je 0x45ccfc
or byte [r15 + 0x19], 2
or byte [rbp + 0x19], 2
mov rax, qword [0x00505dc0]
xor edi, edi
mov rcx, qword [rsp + 0x50]
add rax, 0x118
cmp rcx, rax
je 0x45cd2a
mov eax, dword [rcx + 0x20]
mov edi, eax
mov dword [rsp + 0xb8], eax
shr edi, 0xc
xor edi, 1
and edi, 1
lea eax, [rdx - 1]
movzx ecx, byte [rbx + 0x14]
cmp al, 1
seta al
cmp dl, 5
setne r14b
and r14d, eax
and ecx, 0xf
movzx eax, r14b
mov dword [rsp + 0xc4], eax
je 0x45d7c0
mov rax, qword [rsp + 0x58]
movzx ecx, cl
call qword [rax + 0x2c0]
test eax, eax
setne al
movzx eax, al
mov dword [rsp + 0xb8], eax
movzx ecx, byte [r15 + 0x58]
test cl, cl
je 0x45d7d0
mov rax, qword [rsp + 0x58]
call qword [rax + 0x2c0]
test eax, eax
je 0x45d360
cmp dword [rsp + 0xb8], 1
mov dword [rsp + 0xbc], 1
jne 0x45d36b
test r12, r12
je 0x45cf74
test byte [r12 + 0x42], 0x20
jne 0x45cf74
test byte [rsi + 0x42], 0x20
jne 0x45cf74
movzx eax, byte [rbx + 0x14]
movzx edx, byte [r15 + 0x58]
and eax, 0xf
cmp dl, al
je 0x45cf74
cmp dl, 6
je 0x45cdea
cmp al, 6
jne 0x45cf74
cmp dl, 6
jne 0x45ce22
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x50], rax
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0xc4], edi
mov qword [rsp + 0xa8], rbx
mov edi, eax
mov rax, r12
mov r12, rsi
mov rsi, rax
test dword [rsp + 0xc4], edi
mov rdx, qword [r15 + 8]
jne 0x45da5e
mov eax, dword [rsp + 0xc4]
or eax, edi
je 0x45daad
test edi, edi
je 0x45da89
mov r9, qword [rsp + 0x50]
mov qword [rsp + 0x20], r12
mov r8, rsi
lea rcx, str._s:_TLS_definition_in__B_section__A_mismatches_non_TLS_reference_in__B
call fcn.0040e1e0
mov ecx, 0x11
call fcn.0040e3a0
nop dword [rax]
xor eax, eax
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0x48]
mov r9d, 1
mov rcx, rsi
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
call fcn.004922b0
mov rbp, rax
jmp 0x45cad2
mov rax, qword [r15 + 0x28]
mov qword [rsp + 0xa8], rax
mov r12, qword [rax + 0xf0]
mov rax, qword [rsp + 0x60]
cmp qword [rax], 0
jne 0x45cc0c
mov qword [rax], r12
jmp 0x45cc0c
mov qword [rsp + 0xa8], 0
mov r12, qword [r15 + 0x28]
jmp 0x45cbfd
add r14, 1
jmp 0x45cb5b
mov qword [rsp + 0xa8], 0
xor r12d, r12d
jmp 0x45cbfd
shr al, 1
xor ecx, ecx
and eax, 3
cmp al, 1
jbe 0x45cf41
mov rcx, qword [r15 + 8]
mov edx, 0x40
call sub.msvcrt.dll_strrchr
lea rcx, [rax + 1]
cmp r14, rcx
mov eax, 1
je 0x45cf6d
test rcx, rcx
je 0x45d9b0
test r14, r14
je 0x45d9b0
mov rdx, r14
call fcn.004c1658
test eax, eax
sete al
movzx eax, al
mov dword [rdi], eax
jmp 0x45cbbb
movzx r10d, byte [rsp + 0xce]
test r13d, r13d
jne 0x45d2f0
test byte [rbx + 0x15], 3
je 0x45d010
movzx eax, byte [r15 + 0x5b]
test al, 8
je 0x45d010
cmp byte [rbp + 0x18], 6
je 0x45d9b9
cmp qword [r15 + 0x20], 0
je 0x45da39
mov byte [r15 + 0x18], 1
mov qword [r15 + 0x28], rsi
movzx eax, byte [rbx + 0x15]
and eax, 3
cmp al, 3
je 0x45dada
mov rax, qword [rsp + 0x58]
mov r8d, 1
mov rdx, r15
mov rcx, qword [rsp + 0x48]
call qword [rax + 0x1b0]
movzx eax, byte [r15 + 0x5b]
and byte [r15 + 0x5c], 0xf7
and eax, 0xfffffffb
mov byte [r15 + 0x5b], al
and eax, 0xfffffff7
mov qword [r15 + 0x50], 0
mov byte [r15 + 0x5b], al
mov eax, 1
mov byte [r15 + 0x58], 0
jmp 0x45ce72
test edi, edi
je 0x45db35
mov ecx, dword [rsp + 0xb4]
test ecx, ecx
jne 0x45d02e
test byte [r15 + 0x19], 8
je 0x45d728
mov eax, 1
xor r10d, r10d
mov byte [rsp + 0xce], 1
mov ecx, dword [rsp + 0xbc]
test dword [rsp + 0xb8], ecx
je 0x45d059
mov rdx, qword [rsp + 0x70]
mov dword [rdx], 1
mov edx, dword [rsp + 0x84]
or edx, r10d
jne 0x45d081
test edi, edi
je 0x45d6c0
cmp byte [r15 + 0x18], 1
je 0x45d081
mov rdx, qword [rsp + 0x70]
mov edx, dword [rdx]
test edx, edx
je 0x45d097
jmp 0x45d08c
mov rdx, qword [rsp + 0x70]
mov dword [rdx], 1
mov rdx, qword [rsp + 0x78]
mov dword [rdx], 1
movzx edx, byte [rsp + 0x60]
and dl, byte [rsp + 0xce]
mov byte [rsp + 0xc4], dl
je 0x45d0b4
test al, al
jne 0x45d680
mov dword [rsp + 0x80], 0
movzx eax, byte [rsp + 0xb4]
mov dword [rsp + 0x60], 0
and al, r14b
mov byte [rsp + 0xcf], al
je 0x45d0e6
cmp byte [r15 + 0x18], 3
je 0x45d975
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x2b0]
test rax, rax
je 0x45d146
mov qword [rsp + 0x28], r12
mov r9d, edi
mov r8, qword [rsp + 0x68]
mov rcx, r15
mov rdx, qword [rsp + 0xa8]
mov dword [rsp + 0xc8], r10d
mov qword [rsp + 0x30], rdx
movzx edx, r14b
mov dword [rsp + 0x20], edx
mov rdx, rbx
call rax
test eax, eax
je 0x45ce70
mov rax, qword [rsp + 0x68]
mov r10d, dword [rsp + 0xc8]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov r11d, dword [rsp + 0xb4]
test r11d, r11d
jne 0x45d1f0
test r14b, r14b
je 0x45d1f0
test byte [rsp + 0x84], 1
jne 0x45d1f0
cmp byte [rsp + 0xce], 0
je 0x45d1f0
mov eax, dword [rsp + 0xb0]
or eax, dword [rsp + 0xc0]
or eax, r10d
jne 0x45d1f0
test byte [r15 + 0x5b], 2
je 0x45d1f0
test r12, r12
jne 0x45d1da
mov rcx, qword [rsp + 0x48]
mov r8, rsi
mov rbx, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x50]
mov rax, qword [rcx + 0x20]
mov rdx, qword [rbx]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 8]
mov rax, qword [rsp + 0x90]
mov dword [rax], 1
nop dword [rax]
mov eax, 1
jmp 0x45ce72
test byte [r12 + 0x42], 0x20
je 0x45d197
test byte [rsi + 0x42], 0x20
jne 0x45d197
nop dword [rax + rax]
mov edx, dword [rsp + 0x60]
test dword [rsp + 0x80], edx
je 0x45d24d
mov rdx, qword [rbx + 8]
cmp rdx, qword [r15 + 0x50]
je 0x45d24d
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0xb0], r10d
mov r9d, 5
mov r8, rsi
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 0x10]
mov rax, qword [rbx + 8]
cmp rax, qword [r15 + 0x50]
mov r10d, dword [rsp + 0xb0]
ja 0x45d740
mov rax, qword [rsp + 0x78]
mov dword [rax], 1
cmp byte [rsp + 0xc4], 0
je 0x45d540
test r14b, r14b
jne 0x45d6df
cmp byte [r15 + 0x18], 5
jne 0x45d1d0
mov eax, dword [rsp + 0xb8]
or eax, r10d
jne 0x45d6df
mov eax, dword [rsp + 0x80]
test eax, eax
je 0x45d1d0
mov rax, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
mov dword [rax], 1
mov rax, qword [rbx + 8]
mov qword [rsi], rax
mov rax, qword [rsp + 0x58]
call qword [rax + 0x2a8]
mov rbx, qword [rsp + 0x68]
mov qword [rbx], rax
mov rax, qword [rsp + 0x78]
mov dword [rax], 1
jmp 0x45d1d0
and byte [r15 + 0x5c], 0xfe
mov eax, 1
jmp 0x45ce72
movzx eax, byte [r15 + 0x59]
and eax, 3
je 0x45d450
mov rdx, qword [0x00505dc0]
add rdx, 0x118
cmp qword [rsp + 0x50], rdx
je 0x45d450
mov rsi, qword [rsp + 0x90]
mov dword [rsi], 1
or byte [r15 + 0x5b], 4
or byte [rbp + 0x5b], 4
cmp al, 3
jne 0x45d1d0
mov rcx, qword [rsp + 0x48]
mov rdx, r15
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.0045c8d0
mov dword [rsp + 0xbc], 0
movzx edx, byte [r15 + 0x58]
movzx eax, byte [rbx + 0x14]
and eax, 0xf
test dl, dl
setne cl
cmp dl, al
setne dl
test cl, dl
je 0x45cdaa
test al, al
je 0x45cdaa
test edi, edi
jne 0x45d3a4
mov rax, qword [rsp + 0x50]
test byte [rax + 0x21], 0x10
je 0x45cdaa
test r14b, r14b
jne 0x45d3b4
cmp byte [r15 + 0x18], 5
jne 0x45cdaa
mov r9d, dword [rsp + 0xb4]
test r9d, r9d
jne 0x45d3cc
cmp byte [rsp + 0x60], 0
jne 0x45d1be
cmp rbp, r15
setne dl
test r13d, r13d
sete al
test dl, al
je 0x45cdaa
mov r8d, dword [rsp + 0xb4]
test r8d, r8d
je 0x45cdaa
mov rax, qword [rsp + 0x58]
mov r8d, 1
mov rdx, rbp
mov rcx, qword [rsp + 0x48]
call qword [rax + 0x1b0]
movzx eax, byte [rbp + 0x5c]
and byte [rbp + 0x5b], 0xf3
and eax, 0x77
cmp qword [rbp + 0x20], 0
mov byte [rbp + 0x5c], al
je 0x45db0c
mov byte [rbp + 0x18], 1
mov eax, 1
mov qword [rbp + 0x28], rsi
jmp 0x45ce72
mov r8d, r15d
and r8d, 0xfffffff9
or r8d, 2
mov byte [rbp + 0x5c], r8b
jmp 0x45cb5b
mov eax, edi
mov edx, 0
and eax, 1
cmp byte [rsp + 0x80], 2
mov byte [rsp + 0xce], al
setne al
test r14b, r14b
cmove edx, dword [rsp + 0x84]
mov dword [rsp + 0x84], edx
jmp 0x45d03e
cmp byte [rsp + 0xce], 0
jne 0x45d660
test r14b, r14b
jne 0x45d660
mov eax, dword [r12 + 0x40]
shr eax, 0xb
and eax, 1
mov dword [rsp + 0xb4], eax
jmp 0x45ccfc
movzx eax, byte [rbp + 0x5c]
and eax, 0xfffffff9
or eax, 4
mov byte [rbp + 0x5c], al
cmp byte [r14 + 1], 0
je 0x45cb58
jmp 0x45cf05
cmp byte [rsp + 0x80], 2
je 0x45cc7c
or byte [r15 + 0x5d], 1
or byte [rbp + 0x5d], 1
jmp 0x45cc7c
test edx, edx
je 0x45cbb5
jmp 0x45cbbb
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0xb4], 0
test rax, rax
je 0x45ccfc
mov rax, qword [rax + 0xf8]
mov eax, dword [rax + 0x18]
shr eax, 0xf
and eax, 1
mov dword [rsp + 0xb4], eax
jmp 0x45ccfc
mov r9d, dword [rsp + 0x80]
test r9d, r9d
je 0x45d749
cmp byte [r15 + 0x18], 5
jne 0x45d749
mov rax, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
mov dword [rax], 1
mov rax, qword [rbx + 8]
mov qword [rdi], rax
mov rax, qword [rsp + 0x58]
call qword [rax + 0x2a8]
mov rdi, qword [rsp + 0x68]
test r13d, r13d
mov qword [rsp + 0x50], rax
mov qword [rdi], rax
mov rax, qword [rsp + 0x78]
mov dword [rax], 1
jne 0x45d1d0
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x20]
mov dword [rsp + 0x80], eax
and eax, 0x1000
je 0x45d1d0
mov edi, dword [rsp + 0x84]
or edi, dword [rsp + 0xbc]
je 0x45d8ca
cmp byte [rsp + 0xcf], 0
je 0x45d8bd
test byte [r15 + 0x5b], 8
je 0x45d8bd
mov rax, qword [r15 + 0x28]
mov byte [r15 + 0x18], 1
mov rbx, qword [rsp + 0x78]
mov rax, qword [rax + 0xf0]
mov qword [r15 + 0x28], rax
mov dword [rbx], 1
mov rbx, qword [rsp + 0x50]
test byte [rbx + 0x21], 0x10
je 0x45d640
mov r8d, dword [rsp + 0xbc]
test r8d, r8d
je 0x45d635
and byte [r15 + 0x5b], 0xf7
mov byte [r15 + 0x58], 0
mov rsi, qword [rsp + 0x70]
mov dword [rsi], 1
cmp byte [rbp + 0x18], 6
je 0x45d771
mov qword [r15 + 0x70], 0
jmp 0x45d1d0
test r13d, r13d
je 0x45d1d0
test byte [r15 + 0x5b], 2
jne 0x45d49a
jmp 0x45d1d0
mov dword [rsp + 0x80], 0
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 3
cmp eax, 1
jne 0x45d0bf
cmp qword [rbx + 8], 0
mov edx, dword [rsp + 0xb8]
setne al
xor edx, 1
and edx, eax
mov dword [rsp + 0x80], edx
jmp 0x45d0bf
mov rdx, qword [rsp + 0x70]
mov edx, dword [rdx]
test edx, edx
jne 0x45d08c
cmp byte [r15 + 0x18], 1
je 0x45d08c
jmp 0x45d097
mov rax, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x68]
mov dword [rax], 1
mov rax, qword [0x00505dc0]
add rax, 0x118
mov qword [rsi], rax
mov rax, qword [rsp + 0x78]
cmp byte [r15 + 0x18], 5
mov dword [rax], 1
jne 0x45d1d0
mov rax, qword [rsp + 0x70]
mov dword [rax], 1
jmp 0x45d1d0
cmp byte [rsp + 0x80], 2
mov byte [rsp + 0xce], 1
setne al
jmp 0x45d03e
mov qword [r15 + 0x50], rax
jmp 0x45d242
and r14b, byte [rsp + 0xce]
test r14b, r14b
je 0x45daf3
test r10d, r10d
jne 0x45d7e0
test r13d, r13d
je 0x45d5db
jmp 0x45d1d0
mov qword [rbp + 0x28], rax
mov rax, qword [rsp + 0x58]
mov r8, r15
mov rdx, rbp
mov byte [rbp + 0x18], 1
mov rcx, qword [rsp + 0x48]
mov byte [r15 + 0x18], 6
mov qword [r15 + 0x28], rbp
call qword [rax + 0x1a8]
movzx eax, byte [r15 + 0x5b]
test al, 8
je 0x45d1d0
and eax, 0xfffffff7
mov byte [r15 + 0x5b], al
mov eax, 1
or byte [rbp + 0x5b], 4
jmp 0x45ce72
mov dword [rsp + 0xb8], 0
jmp 0x45cd71
mov dword [rsp + 0xbc], 0
jmp 0x45cdaa
test r12, r12
je 0x45d7f3
test byte [r12 + 0x42], 0x20
je 0x45d7f3
test byte [rsi + 0x42], 0x20
je 0x45d804
mov rax, qword [rsp + 0x90]
xor r10d, r10d
mov dword [rax], 1
mov eax, dword [rsp + 0xc0]
mov r8, rbx
mov rdx, r15
mov dword [rsp + 0x80], r10d
mov rcx, qword [rsi + 8]
mov dword [rsp + 0x20], r10d
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x50]
lea r9, [rax + 0x20]
call fcn.00458760
cmp dword [r15 + 0x3c], 0xffffffff
mov r10d, dword [rsp + 0x80]
je 0x45d873
movzx eax, byte [r15 + 0x59]
and eax, 3
sub eax, 1
cmp al, 1
ja 0x45d873
mov rax, qword [rsp + 0x58]
mov r8d, 1
mov rdx, r15
mov rcx, qword [rsp + 0x48]
call qword [rax + 0x1b0]
mov r10d, dword [rsp + 0x80]
test r13d, r13d
jne 0x45d1d0
test r10d, r10d
jne 0x45d5db
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x20]
mov dword [rsp + 0x80], eax
and eax, 0x1000
je 0x45d1d0
mov edi, dword [rsp + 0x84]
or edi, dword [rsp + 0xbc]
je 0x45d8ca
cmp byte [rsp + 0xcf], 0
jne 0x45d5e9
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x1000
test eax, eax
je 0x45d1d0
mov ecx, dword [rsp + 0x60]
test ecx, ecx
je 0x45d1d0
mov rcx, qword [rsp + 0x48]
mov r8, rsi
mov r9d, 5
mov rdx, qword [rbx + 8]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 0x10]
mov rsi, qword [rsp + 0xa0]
mov rax, qword [r15 + 0x50]
cmp rax, qword [rsi]
jbe 0x45d913
mov qword [rsi], rax
cmp qword [rsp + 0x88], 0
je 0x45dac4
mov rax, qword [r15 + 0x28]
mov rsi, qword [rsp + 0x88]
mov edx, dword [rax + 0x70]
mov rax, qword [rax + 0xf0]
mov dword [rsi], edx
mov rsi, qword [rsp + 0x78]
mov byte [r15 + 0x18], 1
cmp byte [rbp + 0x18], 6
mov qword [r15 + 0x28], rax
mov dword [rsi], 1
mov rsi, qword [rsp + 0x70]
mov dword [rsi], 1
je 0x45d771
mov qword [r15 + 0x70], 0
mov eax, 1
jmp 0x45ce72
test byte [r15 + 0x5b], 8
je 0x45d0e6
mov rax, qword [r15 + 0x28]
mov eax, dword [rax + 0x20]
and eax, 3
cmp eax, 1
jne 0x45d0e6
cmp qword [r15 + 0x50], 0
mov edx, dword [rsp + 0xbc]
setne al
xor edx, 1
and edx, eax
mov dword [rsp + 0x60], edx
jmp 0x45d0e6
xor eax, eax
mov dword [rdi], eax
jmp 0x45cbbb
test al, 1
je 0x45daeb
movzx eax, byte [r15 + 0x18]
mov r8, r15
mov rdx, rbp
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov byte [rbp + 0x18], al
mov rcx, r14
mov byte [r15 + 0x18], 6
call qword [rdi + 0x1a8]
mov qword [r15 + 0x28], rbp
movzx eax, byte [rbx + 0x15]
and eax, 3
cmp al, 3
je 0x45dafb
mov r8d, 1
mov rdx, r15
mov rcx, r14
call qword [rdi + 0x1b0]
movzx eax, byte [r15 + 0x5b]
and byte [r15 + 0x5c], 0xf7
and eax, 0xfffffffb
mov byte [r15 + 0x5b], al
and eax, 0xfffffff7
mov qword [r15 + 0x50], 0
mov byte [r15 + 0x5b], al
mov byte [r15 + 0x58], 0
mov r15, rbp
jmp 0x45cfa3
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x28]
cmp qword [rax + 0x30], r15
je 0x45cfae
mov byte [r15 + 0x18], 0
mov qword [r15 + 0x28], 0
jmp 0x45cfb7
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x20], r12
mov r8, rsi
mov r9, qword [rsp + 0x50]
lea rcx, str._s:_TLS_definition_in__B_section__A_mismatches_non_TLS_definition_in__B_section__A
mov qword [rsp + 0x28], rax
call fcn.0040e1e0
jmp 0x45ce63
mov rax, qword [rsp + 0xa8]
mov r9, r12
mov r8, rsi
lea rcx, str._s:_TLS_reference_in__B_mismatches_non_TLS_definition_in__B_section__A
mov qword [rsp + 0x20], rax
call fcn.0040e1e0
jmp 0x45ce63
lea rcx, str._s:_TLS_reference_in__B_mismatches_non_TLS_reference_in__B
mov r9, r12
mov r8, rsi
call fcn.0040e1e0
jmp 0x45ce63
lea rcx, str..._.._.._src_binutils_2.30_bfd_elflink.c
mov edx, 0x6e8
call fcn.0040e320
jmp 0x45d922
movzx eax, byte [r15 + 0x5b]
or eax, 4
mov byte [r15 + 0x5b], al
jmp 0x45cff0
mov r15, rbp
jmp 0x45cfa3
mov r10d, edi
jmp 0x45d873
movzx eax, byte [r15 + 0x5b]
or eax, 4
mov byte [r15 + 0x5b], al
jmp 0x45da1d
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x28]
cmp qword [rax + 0x30], rbp
je 0x45d423
mov byte [rbp + 0x18], 0
mov eax, 1
mov qword [rbp + 0x28], 0
jmp 0x45ce72
cmp byte [rsp + 0x80], 2
mov byte [rsp + 0xce], 0
setne al
jmp 0x45d03e