Function at 0x425350
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, 0x88
mov rsi, rdx
mov rbx, rcx
xor edx, edx
mov rcx, rsi
call fcn.0042e520
mov edi, dword [rsi + 0x40]
cmp edi, 0xb
je 0x4254f0
cmp edi, 6
mov ecx, edi
je 0x4254f0
cmp ecx, 0xb
je 0x42553a
cmp ecx, 8
jne 0x4256f0
cmp byte [rbx + 0x108], 0
jne 0x4254f9
mov eax, dword [rbx + 0x100]
test eax, eax
jg 0x425ab7
cmp byte [rbx + 0x44], 0
mov ecx, dword [rsi + 0x44]
je 0x4253ca
cmp dword [rsi + 0x40], 6
je 0x425560
test ecx, ecx
jne 0x425570
mov edx, dword [rsi + 0x40]
cmp edx, 8
jne 0x425645
add dword [rbx + 0x100], 1
movsxd rax, dword [rsi + 0x40]
cmp eax, 3
je 0x425665
cmp eax, 0xe
je 0x425665
cmp edi, 6
jne 0x425409
cmp eax, 4
je 0x425a12
add dword [rbx + rax*4 + 8], 1
mov eax, dword [rbx + 0x124]
test eax, eax
je 0x425625
add eax, 1
mov rdx, rsi
mov dword [rbx + 0x124], eax
lea rax, [rsi + 0x38]
mov qword [rsi + 0x38], 0
mov qword [rsi + 0x18], rax
mov rcx, qword [rbx]
call fcn.0042f5e0
mov rdx, rsi
mov rcx, rbx
call qword [rbx + 0x98]
mov rcx, qword [rbx]
call fcn.0042f1a0
cmp byte [rbx + 0x7f], 0
jne 0x425920
cmp byte [rbx + 0x85], 0
jne 0x425830
mov r8d, edi
mov rdx, rsi
mov rcx, rbx
call qword [rbx + 0xa8]
cmp byte [rbx + 0x111], 0
jne 0x425722
mov edx, dword [rsi + 0x40]
mov rcx, rbx
call fcn.004251d0
mov qword [rsi + 0x38], 0
mov rcx, qword [rbx + 0x118]
test rcx, rcx
je 0x4254b7
mov rdx, qword [rsi + 0x28]
cmp byte [rdx + 0xa1], 0
je 0x4256b0
sub dword [rbx + 0x100], 1
mov rax, qword [rsi + 0x28]
mov rdx, qword [rax + 0xa8]
mov eax, 1
test rdx, rdx
je 0x4254fb
mov r8, qword [rbx + 0xd8]
test r8, r8
je 0x4254fb
mov byte [rsp + 0x30], al
mov rcx, rbx
call r8
movzx eax, byte [rsp + 0x30]
jmp 0x4254fb
cmp byte [rbx + 0x91], 0
je 0x425510
xor eax, eax
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [0x005026a0]
mov edx, eax
mov rcx, qword [r14]
call fcn.0044ce70
test eax, eax
je 0x42552e
cmp byte [rbx + 0x92], 0
je 0x4254f9
mov ecx, dword [rsi + 0x40]
cmp ecx, 0xb
jne 0x425393
cmp byte [rbx + 0x88], 0
je 0x425654
mov dword [rsi + 0x40], 4
mov edi, 4
jmp 0x4253a9
test ecx, ecx
mov dword [rsi + 0x40], 4
je 0x425645
nop
cmp dword [rbx + 0x8c], ecx
je 0x4253d2
mov edx, dword [rbx + 0x104]
mov r8, qword [rbx + 0xc0]
call qword [rbx + 0xb8]
test eax, eax
je 0x4254f9
mov r11d, dword [rbx + 0x60]
test r11d, r11d
jle 0x4256c4
xor edx, edx
mov rcx, rsi
call fcn.0042e520
mov ebp, dword [rbx + 0x60]
mov r13d, eax
sub ebp, 1
js 0x4256c4
mov r14, qword [0x005026a0]
jmp 0x4255ea
test eax, eax
je 0x4256c0
cmp dword [rsi + 0x44], eax
je 0x4256c0
sub ebp, 1
js 0x4256c4
mov rdx, qword [rbx + 0x58]
movsxd rax, ebp
mov rcx, qword [r14]
lea rax, [rax + rax*2]
mov r8d, r13d
mov edx, dword [rdx + rax*4]
lea r12, [rax*4]
call fcn.0044d230
test eax, eax
js 0x4255e1
mov rax, qword [rbx + 0x58]
add rax, r12
mov edx, dword [rax + 8]
mov eax, dword [rax + 4]
cmp edx, 0x10
jne 0x4255d0
mov ebp, eax
jmp 0x4255e1
mov rdx, qword [rbx + 0x128]
test rdx, rdx
je 0x42541c
mov rcx, rbx
call rdx
mov eax, dword [rbx + 0x124]
jmp 0x42541c
xor edx, edx
mov rcx, rbx
call fcn.00425170
jmp 0x4253de
mov dword [rsi + 0x40], 6
mov edi, 6
jmp 0x4253a9
mov r10d, dword [rbx + 0x18]
test r10d, r10d
jle 0x425a00
cmp byte [rbx + 0x86], 0
je 0x425aec
mov r9, qword [rbx + 0xb0]
test r9, r9
je 0x4253fb
mov r8, qword [rsi + 8]
mov rdx, qword [rsi]
mov rcx, rbx
call r9
cmp edi, 6
movsxd rax, dword [rsi + 0x40]
je 0x425400
jmp 0x425409
call fcn.0042d630
jmp 0x4254b7
test edx, edx
jne 0x4256d7
movsxd rdx, dword [rsi + 0x44]
mov rax, qword [rbx + 0x50]
mov edx, dword [rax + rdx*4]
test edx, edx
je 0x425a20
mov dword [rsi + 0x40], edx
cmp edx, 1
jne 0x4253d5
jmp 0x4254f9
mov eax, dword [rbx + 0x100]
test eax, eax
jle 0x4253b7
cmp ecx, 3
je 0x42570c
cmp ecx, 0xe
jne 0x425ab7
cmp eax, 1
jne 0x425ab7
mov rcx, qword [rbx]
call fcn.0042f270
jmp 0x4253b7
mov rdi, qword [rbx]
mov r15, qword [rsi + 0x28]
test rdi, rdi
je 0x425b49
test r15, r15
je 0x425b31
mov rcx, rdi
call fcn.0042ea60
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x38], rax
call fcn.0042ea20
mov eax, dword [r15 + 0x78]
test eax, eax
je 0x4259e2
lea rax, [r15 + 0x78]
xor ebp, ebp
lea r14, [rsp + 0x60]
lea r13, [rsp + 0x40]
mov qword [rsp + 0x30], rax
jmp 0x42580f
mov rdx, qword [r15 + 0x98]
lea rax, [rdx + rax*8 - 0x10]
mov r12, qword [rax]
mov rcx, r13
add ebp, 1
mov edx, dword [r12]
call fcn.00431c60
lea rdx, str.fix_it:
mov rcx, rdi
call fcn.0042f160
mov rdx, qword [rsp + 0x40]
mov rcx, rdi
call fcn.00426680
mov edx, dword [r12 + 4]
mov rcx, r14
call fcn.00431c60
mov eax, dword [rsp + 0x6c]
mov r9d, dword [rsp + 0x4c]
lea rdx, str.:_i:_i__i:_i:
mov r8d, dword [rsp + 0x48]
mov rcx, rdi
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
call fcn.00430b80
mov rdx, qword [r12 + 8]
mov rcx, rdi
call fcn.00426680
mov rcx, rdi
call fcn.0042ecd0
cmp dword [r15 + 0x78], ebp
jbe 0x4259e2
cmp ebp, 1
movsxd rax, ebp
jg 0x425780
mov rcx, qword [rsp + 0x30]
lea rax, [rcx + rax*8 + 8]
jmp 0x42578c
mov edx, dword [rsi + 0x44]
mov r9d, dword [rsi + 0x40]
mov r8d, edi
mov rcx, rbx
call qword [rbx + 0xc8]
test rax, rax
mov r12, rax
je 0x42546b
mov rax, qword [rbx + 0xd0]
mov rbp, qword [rbx]
test rax, rax
je 0x425a30
mov edx, dword [rbp + 0x44]
test edx, edx
je 0x425a30
mov edx, dword [rsi + 0x44]
mov rcx, rbx
call rax
mov rbp, qword [rbx]
lea rdx, [0x004f0620]
mov r13, rax
mov rcx, rbp
call fcn.0042f160
movsxd rdx, dword [rsi + 0x40]
lea rax, [0x004f09e0]
mov r14, qword [rax + rdx*8]
mov rcx, r14
call sub.msvcrt.dll_strlen
movzx ecx, byte [rbp + 0x43]
mov r8, rax
mov rdx, r14
call fcn.00427150
mov rcx, rbp
mov rdx, rax
call fcn.0042f160
test r13, r13
je 0x425a70
mov rdx, r13
mov rcx, rbp
call fcn.0042f530
mov rdx, r12
mov rcx, rbp
call fcn.0042f160
mov rcx, rbp
call fcn.00430bf0
mov rcx, r13
call fcn.00494cb8
movzx ecx, byte [rbp + 0x43]
call fcn.004271c0
mov rcx, rbp
mov rdx, rax
call fcn.0042f160
mov rcx, rbp
mov edx, 0x5d
call fcn.0042ed30
mov rcx, r12
call fcn.00494cb8
jmp 0x42546b
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x42545e
mov r12d, dword [rax]
test r12d, r12d
je 0x42545e
mov rbp, qword [rbx]
mov rcx, rbp
call fcn.0042ea60
lea rdx, [0x004f0620]
mov rcx, rbp
mov r14, rax
call fcn.0042f160
movsxd rdx, dword [rsi + 0x40]
lea rax, [0x004f09e0]
mov r13, qword [rax + rdx*8]
mov rcx, r13
call sub.msvcrt.dll_strlen
movzx ecx, byte [rbp + 0x43]
mov r8, rax
mov rdx, r13
call fcn.00427150
mov rcx, rbp
mov rdx, rax
call fcn.0042f160
mov r8d, dword [rbp + 0x44]
test r8d, r8d
jne 0x425a8d
lea rdx, str.CWE__i
mov r8d, r12d
mov rcx, rbp
call fcn.00430b80
mov rcx, qword [rbx]
mov rdx, r14
call fcn.0042ea20
mov ecx, dword [rbp + 0x44]
test ecx, ecx
jne 0x425a80
movzx ecx, byte [rbp + 0x43]
call fcn.004271c0
mov rcx, rbp
mov rdx, rax
call fcn.0042f160
mov edx, 0x5d
mov rcx, rbp
call fcn.0042ed30
jmp 0x42545e
mov rdx, qword [rsp + 0x38]
mov rcx, rdi
call fcn.0042ea20
mov rcx, qword [rbx]
call fcn.0042e740
jmp 0x425487
mov r9d, dword [rbx + 0x1c]
test r9d, r9d
jg 0x425672
jmp 0x42567f
add dword [rbx + 0x3c], 1
jmp 0x42540e
mov edx, dword [rsi + 0x40]
jmp 0x4256da
lea rdx, [0x004f0620]
mov rcx, rbp
call fcn.0042f160
movsxd rdx, dword [rsi + 0x40]
lea rax, [0x004f09e0]
mov r13, qword [rax + rdx*8]
mov rcx, r13
call sub.msvcrt.dll_strlen
movzx ecx, byte [rbp + 0x43]
mov rdx, r13
mov r8, rax
call fcn.00427150
mov rcx, rbp
mov rdx, rax
call fcn.0042f160
mov rdx, r12
mov rcx, rbp
call fcn.0042f160
jmp 0x4258ea
mov rcx, rbp
call fcn.00430bf0
jmp 0x4259bc
lea rcx, str.https:__cwe.mitre.org_data_definitions__i.html
mov edx, r12d
call fcn.0047bfb0
mov rcx, rbp
mov r13, rax
mov rdx, rax
call fcn.0042f530
mov rcx, r13
call fcn.00494cb8
jmp 0x425994
cmp eax, 2
jg 0x425ac4
mov rcx, qword [rbx]
call fcn.0042f270
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, str.Internal_compiler_error:_Error_reporting_routines_re_entered._n
lea rcx, [rax + 0x60]
call fcn.00424db0
mov edx, 3
mov rcx, rbx
call fcn.004251d0
call sub.msvcrt.dll_abort
mov rcx, rsi
xor edx, edx
call fcn.0042e520
lea rcx, [rsp + 0x60]
mov edx, eax
call fcn.00431c60
mov esi, dword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, str._s:_d:_confused_by_earlier_errors__bailing_out_n
lea rcx, [rax + 0x60]
mov r9d, esi
mov r8, rbx
call fcn.00424db0
mov ecx, 4
call sub.msvcrt.dll_exit
lea r8, str.print_parseable_fixits
lea rcx, [0x004f0548]
mov edx, 0x374
call fcn.0049a060
lea r8, str.print_parseable_fixits
lea rcx, [0x004f0548]
mov edx, 0x373
call fcn.0049a060
nop
nop dword [rax]
nop word cs:[rax + rax]