Function at 0x10019953
Capabilities:
Get common file path
Terminate process

Disassembly:
mov eax, 0x10084558
call fcn.10083cb8
sub esp, 0xf0
mov dword [ebp - 0x3c], ecx
push ebx
push esi
push edi
test dl, dl
je 0x10019fb6
mov dword [ebp - 0x20], 0xaeb9ae77
mov eax, 0xbdec7e1
mov dword [ebp - 0x18], 0x55595070
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x28], 0x44fe
mov dword [ebp - 0x14], 0x949e3b93
mov dword [ebp - 0x2c], 8
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
sub edx, eax
mov eax, dword [ebp - 0x20]
neg edx
push 2
sbb edx, edx
xor ecx, ecx
pop edi
inc edx
cmp edx, eax
push 1
pop esi
setne cl
push 9
pop edx
cmp ecx, dword [ebp - 0x20]
je 0x10019ae9
mov dword [ebp - 0x2c], 0xfff6
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x38], 0xb94d0f4f
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x24], 0x89276496
push edi
call fcn.10017abd
xor ebx, ebx
mov dword [ebp - 0x18], ebx
jmp 0x10019a20
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x90]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10019a0d
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setg dl
cmp edx, 4
jae 0x10019a47
mov eax, ebx
cmp dword [ebp - 0x34], ebx
je 0x10019a49
mov eax, esi
inc dword [ebp - 0x38]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xa1d2daff
sbb eax, eax
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
inc ecx
sub ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
inc ecx
sub eax, ecx
je 0x10019a7d
mov eax, esi
cmp dword [ebp - 0x24], ebx
jne 0x10019a7f
mov eax, ebx
mov ecx, dword [ebp - 0x20]
imul ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax + 4], ecx
mov dword [ebp - 0x24], 0xffffffe3
jmp 0x10019ad3
mov dword [ebp - 0x2c], 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], 0xffffffe5
jmp 0x10019aca
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], bl
je 0x10019ac2
push ebx
push 0x1da3
push ebx
call dword [sym.imp.OLEAUT32.dll_SafeArrayDestroy]
cmp dword [ebp - 0x2c], ebx
jne 0x10019ad0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff9
jne 0x10019aad
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x16
jge 0x10019a97
lea ecx, [ebp - 0x90]
call fcn.100182da
jmp 0x10019bb2
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x20], 0xffffffe8
cmp dword [ebp - 0x20], 0x15
jne 0x10019bb5
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x1c], ebx
jmp 0x10019b15
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6c], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10019b0b
mov dword [ebp - 0x1c], ebx
jmp 0x10019b2c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xfc], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10019b1f
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
test eax, eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x2c]
setne cl
xor edx, edx
cmp ecx, eax
push 9
setg dl
xor ecx, ecx
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x2c]
cmp edx, eax
mov eax, dword [ebp - 0x24]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setl dl
xor ecx, ecx
cmp edx, eax
pop edx
setg cl
xor eax, eax
sub ecx, 0x567d043c
cmp ecx, 0x58f2
setle al
mov dword [ebp - 0xf0], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x15
je 0x10019aff
push 9
pop edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x14]
mov dword [ebp - 0x2c], 0xa51e29af
mov eax, dword [ebp - 0x2c]
sub edx, eax
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
add ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
imul ecx, eax
mov eax, dword [ebp - 0x20]
add eax, ecx
cmp eax, dword [ebp - 0x40]
jle 0x10019bef
cmp dword [ebp - 0x14], ebx
jne 0x10019bef
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, esi
mov eax, dword [ebp - 0x48]
push edi
setle cl
xor edx, edx
imul ecx, ecx, 0x18bf
sub ecx, eax
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x30], 0xd6f2
mov dword [ebp - 0x30], 0x20f89b5
call fcn.10017abd
push 3
lea ecx, [ebp - 0x9c]
mov dword [ebp - 4], ebx
call fcn.10017abd
push 3
mov dword [ebp - 0x18], 0xb457102d
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10019c6a
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], 0xc692beaa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10019c57
mov dword [ebp - 0x18], ebx
jmp 0x10019c87
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], 0x9febb674
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10019c74
mov dword [ebp - 0x18], 0x14
jmp 0x10019cd5
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 0x14], 0xfffffff8
jmp 0x10019cba
cmp byte [ebp - 0xd], 0
je 0x10019cb7
push ebx
push ebx
push 0x20
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
mov byte [ebp - 0xd], bl
je 0x10019ca5
cmp byte [ebp - 0xd], 0
je 0x10019cd2
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegConnectRegistryW]
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffff
jle 0x10019c95
lea ecx, [ebp - 0x9c]
call fcn.100182da
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x14], ebx
jmp 0x10019d05
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xb4]
mov dword [eax + ecx*4], 0xb8c3ad3b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10019cf2
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10019d1f
push ebx
push 0x257e
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
inc dword [ebp - 0x28]
lea ecx, [ebp - 0xb4]
or dword [ebp - 4], 0xffffffff
call fcn.100182da
mov dword [ebp - 0x18], 0xffffffff
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x34], ebx
push edi
call fcn.10017abd
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x3c], 0xbdd4
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], 0x4752e4a6
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 4
mov dword [ebp - 0x28], 0xe67b33df
mov dword [ebp - 0x38], 0xa3a768fb
mov dword [ebp - 0x20], ebx
jmp 0x10019d8c
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
mov dword [eax + ecx*4], 0xde57
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10019d7c
mov dword [ebp - 0x20], ebx
jmp 0x10019da7
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xd8], 0x1b167519
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10019d96
mov dword [ebp - 0x20], ebx
jmp 0x10019dbc
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5c], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10019db2
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x68]
cmp eax, dword [edi + 4]
mov eax, dword [ebp - 0x3c]
setle cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
dec edx
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setl cl
sub ecx, dword [ebp - 0x34]
add ecx, 0x5900
cmp ecx, 0xfffa
sbb eax, eax
neg eax
sub eax, 0xd65121ac
neg eax
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [edi + 4]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setle dl
sub edx, 7
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setge cl
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x18], ebx
je 0x10019efb
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x68]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x28]
cmp ecx, eax
jle 0x10019e74
cmp dword [ebp - 0x18], ebx
je 0x10019e70
cmp dword [ebp - 0xd8], ebx
jne 0x10019e74
mov ecx, ebx
jmp 0x10019e76
mov ecx, esi
mov eax, dword [ebp - 0x2c]
imul eax, ecx
test eax, eax
jne 0x10019e87
mov edx, ebx
cmp dword [ebp - 0x30], ebx
je 0x10019e89
mov edx, esi
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
cmp ecx, 0xfffffffe
setle dl
sub edx, 0xfffffffb
neg edx
sbb edx, edx
lea ecx, [edx + 1]
xor edx, edx
add ecx, dword [edi + 4]
mov dword [ebp - 0xd8], ecx
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x68]
sete dl
xor ecx, ecx
cmp edx, dword [eax]
setne cl
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], ebx
jne 0x10019ecf
cmp dword [ebp - 0x1c], ebx
je 0x10019ed6
mov edx, esi
cmp dword [edi + 4], ebx
jne 0x10019ed8
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
sub eax, 0xb2a93f04
neg eax
sbb eax, eax
inc eax
cmp eax, 0xfff9
mov eax, esi
jae 0x10019efd
mov eax, ebx
mov ecx, 0xbc4638b1
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
add eax, dword [edi + 4]
cmp eax, 0xfffffffb
mov eax, dword [ebp - 0x5c]
setl dl
sub edx, eax
mov eax, dword [ebp - 0x1c]
sub edx, 0x559c
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x18]
sete cl
xor edx, edx
sub ecx, 0x1c31
cmp ecx, eax
setle dl
xor ecx, ecx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
sub edx, 0x24235991
cmp edx, eax
setl cl
mov dword [ebp - 0x14], ecx
lea ecx, [ebp - 0x68]
call fcn.100182da
push esi
lea ecx, [ebp - 0x84]
call fcn.10017abd
mov dword [ebp - 0x14], ebx
jmp 0x10019f7c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x84]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10019f6c
mov eax, dword [ebp - 0x84]
mov dword [eax], ebx
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10019f9f
push ebx
push 0x1725
push ebx
call dword [sym.imp.OLEAUT32.dll_SafeArrayGetLBound]
lea ecx, [ebp - 0x84]
call fcn.100182da
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [eax], ebx
jmp 0x1001a380
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x24], ebx
inc esi
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x1c], 0xa8360e56
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x14], ebx
jmp 0x10019fde
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x58], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10019fd4
push 2
mov dword [ebp - 0x24], ebx
pop edi
jmp 0x1001a089
push 3
lea ecx, [ebp - 0xcc]
call fcn.10017abd
mov dword [ebp - 4], esi
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x28], 0x263d
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x28], 0xfffffffc
mov dword [ebp - 0x28], 0x451f1e28
mov dword [ebp - 0x28], 0xb4cf22a1
push edi
call fcn.10017abd
mov dword [ebp - 0x18], ebx
jmp 0x1001a046
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xcc]
mov dword [eax + ecx*4], 0xe77dd688
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1001a033
mov dword [ebp - 0x18], ebx
jmp 0x1001a064
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc0]
mov dword [eax + ecx*4], 9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a051
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0xc0]
call fcn.100182da
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xcc]
call fcn.100182da
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jle 0x10019fef
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x30]
jg 0x1001a114
mov dword [ebp - 0x14], 0xe510b2d4
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1c], 8
jl 0x1001a0b0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x54], 0xfffffffc
jne 0x1001a0bd
mov eax, esi
cmp dword [ebp - 0x1c], ebx
jne 0x1001a0bf
mov eax, ebx
mov dword [ebp - 0x28], eax
xor edx, edx
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
mov eax, dword [ebp - 0x50]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, 0xdd50170a
setne cl
cmp eax, ecx
mov eax, dword [ebp - 0x24]
sbb edx, edx
xor ecx, ecx
neg edx
sub edx, eax
mov eax, dword [ebp - 0x14]
cmp edx, eax
mov eax, dword [ebp - 0x14]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setle dl
xor ecx, ecx
cmp eax, 0xfffffffe
setne cl
xor eax, eax
cmp ecx, edx
setne al
mov dword [ebp - 0x30], eax
jmp 0x1001a136
mov dword [ebp - 0x1c], ebx
jmp 0x1001a123
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x58], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001a119
cmp dword [ebp - 0x1c], 0xfffd
sbb eax, eax
inc eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x30], 0x42c70bb7
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x1001a152
push 0x73d
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x1001a163
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x14], 0x4432
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x20], 0xfffe
mov dword [ebp - 0x1c], 0xb0a3531f
push edi
call fcn.10017abd
mov dword [ebp - 4], edi
mov dword [ebp - 0x18], ebx
jmp 0x1001a19d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xec], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a18c
mov dword [ebp - 0x18], ebx
jmp 0x1001a1ba
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe4]
mov dword [eax + ecx*4], 0x459c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a1a7
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x14], ebx
je 0x1001a220
mov dword [ebp - 0x20], ebx
jmp 0x1001a216
mov dword [ebp - 0x1c], ebx
jmp 0x1001a1fd
cmp byte [ebp - 0xd], 0
je 0x1001a1fa
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
mov byte [ebp - 0xd], bl
jle 0x1001a1ec
cmp byte [ebp - 0xd], 0
je 0x1001a213
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x1001a1e7
jmp 0x1001a2f6
mov dword [ebp - 0x2c], 3
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], 0x30
jl 0x1001a2f6
push edi
lea ecx, [ebp - 0x78]
call fcn.10017abd
mov dword [ebp - 0x28], 0x49f7fae0
mov dword [ebp - 0x30], 0x6354d184
mov dword [ebp - 0x14], ebx
jmp 0x1001a264
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x78]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1001a257
mov dword [ebp - 0x1c], 0xffffffe8
cmp dword [ebp - 0x1c], 0xf
jl 0x1001a2de
mov esi, dword [ebp - 0x78]
xor ecx, ecx
mov dword [ebp - 0x14], 0x9002fce4
mov eax, dword [ebp - 0x2c]
cmp dword [esi + 4], eax
mov eax, dword [ebp - 0x78]
setne cl
xor edx, edx
cmp ecx, 0xe85dc32c
setne dl
xor ecx, ecx
cmp edx, dword [eax]
mov eax, 0xf8d36fbc
setne cl
add ecx, 0xffff
cmp eax, ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x14], eax
imul eax, dword [ebp - 0x14], 0x39bb
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
je 0x1001a2c5
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0xa7fcf623
inc dword [ebp - 0x34]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jge 0x1001a279
lea ecx, [ebp - 0x78]
call fcn.100182da
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x30
jge 0x1001a23b
xor esi, esi
inc esi
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x1001a30b
push ebx
push 0x257e
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe4]
call fcn.100182da
push esi
lea ecx, [ebp - 0xa8]
call fcn.10017abd
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x14], ebx
jmp 0x1001a345
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa8]
mov dword [eax + ecx*4], 0x91a049fe
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1001a332
mov eax, dword [ebp - 0xa8]
lea ecx, [ebp - 0xa8]
mov dword [eax], 0xa
call fcn.100182da
mov edx, dword [ebp - 0x3c]
mov dword [edx], ebx
cmp dword [edx], 3
jge 0x1001a380
mov esi, dword [ebp + 0xc]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0xe77dd688
inc dword [edx]
cmp dword [edx], 3
jl 0x1001a36e
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret