Function at 0x140047171
Capabilities:
Parse pe header

Disassembly:
push rbp
push rbx
sub rsp, 0x1c8
lea rbp, [rsp + 0x80]
mov eax, ecx
mov byte [rbp + 0x160], al
lea rax, [0x1400eadcd]
mov qword [rbp - 0x28], rax
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x20], 0
mov word [rbp - 0x10], 0
lea rax, [rbp - 0x30]
mov rcx, rax
call sym.nimFrame_29
call sym.nimErrorFlag_25
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x108], 0
mov byte [rbp + 0x137], 0
mov byte [rbp + 0x136], 0
mov qword [rbp - 0x20], 0x3e
mov rax, qword [0x1400faf10]
mov rcx, rax
call sym.__emutls_get_address
mov rax, qword [rax]
test rax, rax
je 0x140047254
mov qword [rbp - 0x20], 0x40
mov qword [rbp - 0x20], 0x386
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov rax, qword [0x1400faf10]
mov rcx, rax
call sym.__emutls_get_address
mov rdx, qword [rax]
lea rax, [rbp + 0x108]
mov r8d, 0
mov rcx, rax
call fcn.14003290b
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jmp 0x140047b23
nop
mov qword [rbp - 0x20], 0x42
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
movzx eax, byte [rbp + 0x160]
cmp eax, 2
je 0x1400472ab
cmp eax, 2
jg 0x1400472e6
test eax, eax
je 0x1400472e2
cmp eax, 1
jne 0x1400472e6
mov qword [rbp - 0x20], 0x44
call sym.setSystemDpiAware__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZpr
mov byte [rbp + 0x137], al
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
je 0x1400472e5
jmp 0x140047b23
mov qword [rbp - 0x20], 0x45
call sym.setPerMonitorDpiAware__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78i
mov byte [rbp + 0x136], al
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047af5
movzx eax, byte [rbp + 0x136]
mov byte [rbp + 0x137], al
jmp 0x1400472e6
nop
jmp 0x1400472e6
nop
mov qword [rbp - 0x20], 0x47
mov ecx, 8
call sym.IntToDWORD__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZprivateZw
mov dword [rbp + 0x100], eax
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047af8
mov dword [rbp + 0x104], 0x8d05
mov qword [rbp - 0x20], 0x4a
mov qword [rbp + 0x128], 0
lea rax, [rbp + 0x100]
mov rcx, rax
call fcn.14002cebb
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047afb
mov dword [rbp + 0x124], 0
mov rax, qword [0x1400faa40]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x128]
mov rcx, rax
call rdx
mov dword [rbp + 0x124], eax
mov qword [rbp - 0x20], 0x4b
mov dword [rbp + 0x120], 0
mov rax, qword [0x1400faa10]
mov rax, qword [rax]
mov ecx, 0
call rax
mov dword [rbp + 0x120], eax
mov qword [rbp - 0x20], 0x386
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x108]
mov rcx, rax
call fcn.140032985
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047afe
mov qword [rbp - 0x20], 0x4d
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
mov edx, 8
mov ecx, 0x20d8
call sym.nimNewObj
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x108]
mov rdx, qword [0x1400fadd0]
mov qword [rax], rdx
mov qword [rbp - 0x20], 0x4e
mov rax, qword [0x1400fa5a0]
mov rax, qword [rax]
mov rbx, qword [rbp + 0x108]
mov ecx, 0
call rax
mov qword [rbx + 8], rax
mov qword [rbp - 0x20], 0x4f
mov rax, qword [rbp + 0x108]
mov qword [rax + 0x20b0], 0
mov qword [rbp - 0x20], 0x50
mov rax, qword [rbp + 0x108]
mov byte [rax + 0x20b8], 0
mov qword [rbp - 0x20], 0x51
lea rax, [rbp + 0xe0]
mov edx, 0x20
mov rcx, rax
call fcn.14002198f
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b01
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x10]
mov rax, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xe8]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x50]
mov rdx, rax
call fcn.140021560
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b04
mov qword [rbp - 0x20], 0x38a
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x20], 0x52
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0xc0]
mov edx, 0x20
mov rcx, rax
call fcn.140021c28
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b07
mov qword [rbp - 0x20], 0x38a
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x28]
mov rax, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xc8]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0xd0]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x50]
mov rdx, rax
call fcn.140021ab7
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b0a
mov qword [rbp - 0x20], 0x53
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0xa0]
mov edx, 0x20
mov rcx, rax
call fcn.140021c28
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b0d
mov qword [rbp - 0x20], 0x38a
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x40]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0xa8]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0xb0]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x50]
mov rdx, rax
call fcn.140021ab7
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b10
mov qword [rbp - 0x20], 0x54
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x80]
mov edx, 0x20
mov rcx, rax
call fcn.140021dbc
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b13
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x58]
mov rax, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x88]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0x90]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x50]
mov rdx, rax
call fcn.140021d50
mov qword [rbp - 0x20], 0x3a6
lea rax, [0x1400eabc0]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x20], 0x55
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], 0
lea rax, [rbp + 0x70]
mov edx, 0
mov rcx, rax
call fcn.140012f1e
mov qword [rbp - 0x20], 0x3a6
lea rax, [0x1400eabc0]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x70]
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call fcn.140032cad
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b16
mov qword [rbp - 0x20], 0x56
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x50]
mov edx, 0x20
mov rcx, rax
call sym.initTable__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZprivateZw6
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b19
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x2080]
mov rax, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x58]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x50]
mov rdx, rax
call sym.eqsink___OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZprivateZw65p
mov qword [rbp - 0x20], 0x3a6
lea rax, [0x1400eabc0]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x20], 0x57
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
lea rax, [rbp + 0x40]
mov edx, 0
mov rcx, rax
call sym.newSeq__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZprivateZw65pp
mov qword [rbp - 0x20], 0x3a6
lea rax, [0x1400eabc0]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x108]
lea rcx, [rax + 0x2098]
mov rax, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x48]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call fcn.140032dcb
mov qword [rbp - 0x20], 0x58
lea rax, [0x1400eab58]
mov qword [rbp - 0x18], rax
pxor xmm0, xmm0
movsd qword [rbp + 0x118], xmm0
call sym.wGetWinVersionImpl__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZp
movq rax, xmm0
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b1c
mov rax, qword [rbp + 0x108]
movsd xmm0, qword [rbp + 0x118]
movsd qword [rax + 0x20c8], xmm0
mov qword [rbp - 0x20], 0x59
mov byte [rbp + 0x117], 0
call sym.usingTheme__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZprivateZw
mov byte [rbp + 0x117], al
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b1f
mov rax, qword [rbp + 0x108]
movzx edx, byte [rbp + 0x117]
mov byte [rax + 0x20d0], dl
mov qword [rbp - 0x20], 0x5a
mov rax, qword [rbp + 0x108]
mov byte [rax + 0x20a8], 1
mov qword [rbp - 0x20], 0x5e
lea rax, [rbp + 0x30]
mov edx, 0x10
mov rcx, rax
call sym.nimZeroMem_10
lea rax, [sym.wAppProcessWindowUnregister__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048d]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], 0
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call sym.addMessageLoopHook__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZp
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047a80
mov qword [rbp - 0x20], 0x5f
lea rax, [rbp + 0x20]
mov edx, 0x10
mov rcx, rax
call sym.nimZeroMem_10
lea rax, [sym.wAppProcessAcceleratorMessage__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c5555504]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], 0
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call sym.addMessageLoopHook__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZp
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047a83
mov qword [rbp - 0x20], 0x60
lea rax, [rbp + 0x10]
mov edx, 0x10
mov rcx, rax
call sym.nimZeroMem_10
lea rax, [sym.wAppProcessDialogMessage__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], 0
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call sym.addMessageLoopHook__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZp
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047a86
mov qword [rbp - 0x20], 0x61
mov rax, rbp
mov edx, 0x10
mov rcx, rax
call sym.nimZeroMem_10
lea rax, [sym.wAppProcessQuitMessage__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78]
mov qword [rbp], rax
mov qword [rbp + 8], 0
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp]
mov rdx, qword [rbp + 8]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
lea rax, [rbp - 0x60]
mov rdx, rax
call sym.addMessageLoopHook__OOZOOZOnimbleZpkgs50Zwnim4549O48O484552e5151515150dcffad57545557555554ea51bb54d51dfee53c55555048daZw78imZp
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047a89
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
je 0x140047a99
jmp 0x140047a8a
nop
jmp 0x140047a8a
nop
jmp 0x140047a8a
nop
jmp 0x140047a8a
nop
mov rax, qword [rbp + 0x138]
mov byte [rax], 0
call sym.popCurrentException_2
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x140047b22
mov qword [rbp - 0x20], 0x386
lea rax, [0x1400eabf8]
mov qword [rbp - 0x18], rax
mov rbx, qword [rbp + 0x108]
mov rax, qword [0x1400faf10]
mov rcx, rax
call sym.__emutls_get_address
mov r8d, 0
mov rdx, rbx
mov rcx, rax
call fcn.14003290b
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
jmp 0x140047b23
nop
call sym.popFrame_29
mov rax, qword [rbp + 0x108]
add rsp, 0x1c8
pop rbx
pop rbp
ret