Function at 0x100069b0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x2fc
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x10], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x14]
imul eax, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
and ecx, 1
cmp ecx, 0
sete cl
cmp eax, 0xa
setl dl
mov al, cl
xor al, 0xff
mov byte [ebp - 0x1e], al
mov ch, dl
xor ch, 0xff
mov byte [ebp - 0x1d], ch
mov ah, 1
xor ah, 0
mov byte [ebp - 0x1c], ah
and al, 0
and cl, ah
and ch, 0
mov byte [ebp - 0x1b], ch
and dl, ah
mov byte [ebp - 0x1a], dl
or al, cl
mov byte [ebp - 0x19], al
mov al, byte [ebp - 0x19]
mov dl, byte [ebp - 0x1a]
mov cl, byte [ebp - 0x1b]
or cl, dl
xor al, cl
mov byte [ebp - 0x1f], al
mov al, byte [ebp - 0x1f]
mov dl, byte [ebp - 0x1c]
mov ah, byte [ebp - 0x1d]
mov cl, byte [ebp - 0x1e]
or cl, ah
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
mov byte [ebp - 0x20], al
mov al, byte [ebp - 0x20]
test al, 1
jne 0x10006a5d
jmp 0x1000823d
push eax
mov ecx, esp
mov dword [ebp - 0x48], ecx
sub esp, 0x108
mov eax, esp
mov dword [ebp - 0x44], eax
push eax
mov edx, esp
mov dword [ebp - 0x40], edx
push eax
mov edx, esp
mov dword [ebp - 0x3c], edx
push eax
mov edx, esp
mov dword [ebp - 0x38], edx
push eax
mov edx, esp
mov dword [ebp - 0x34], edx
push eax
mov edx, esp
mov dword [ebp - 0x30], edx
push eax
mov edx, esp
mov dword [ebp - 0x2c], edx
mov dword [ecx], 0
sub esp, 8
mov dword [esp], 0x105
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
cmp eax, 0
seta al
mov byte [ebp - 0x27], al
mov eax, dword [0x1005fde8]
mov ecx, dword [0x1005fde4]
mov edx, eax
add edx, 0x7c57a1ec
sub edx, 1
sub edx, 0x7c57a1ec
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x26], cl
mov dl, al
xor dl, 0xff
mov byte [ebp - 0x25], dl
xor cl, 0xff
mov byte [ebp - 0x24], cl
mov cl, 1
xor cl, 1
mov byte [ebp - 0x23], cl
and dl, 0xff
mov byte [ebp - 0x22], dl
and al, cl
mov byte [ebp - 0x21], al
mov ah, byte [ebp - 0x21]
mov al, byte [ebp - 0x22]
mov ch, byte [ebp - 0x23]
mov dl, byte [ebp - 0x26]
mov cl, byte [ebp - 0x24]
and cl, 0xff
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [ebp - 0x49], al
mov cl, byte [ebp - 0x24]
mov al, byte [ebp - 0x25]
or al, cl
mov byte [ebp - 0x4a], al
mov al, byte [ebp - 0x4a]
xor al, 0xff
mov byte [ebp - 0x4b], al
mov al, byte [ebp - 0x49]
mov cl, byte [ebp - 0x4b]
mov dl, byte [ebp - 0x23]
or dl, 1
and cl, dl
or al, cl
mov byte [ebp - 0x4c], al
mov al, byte [ebp - 0x4c]
test al, 1
jne 0x10006b5a
jmp 0x1000823d
mov al, byte [ebp - 0x27]
test al, 1
jne 0x10006b6a
jmp 0x10007bd5
mov eax, dword [ebp - 0x44]
mov byte [eax + 3], 0
mov eax, dword [str.:a_a]
add eax, 0xd2da8bae
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1005e084]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
mov eax, dword [eax - 0x2d257452]
mov dword [ebp - 0x64], eax
lea ecx, [0x1005ee68]
lea eax, [0x10057190]
add eax, 0x293
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100363f0
mov eax, dword [ebp - 0x64]
add esp, 8
lea ecx, [0x1005ee68]
sub esp, 4
mov dword [esp], ecx
call eax
mov dword [ebp - 0x60], eax
lea ecx, [0x1005ee4c]
lea eax, [0x10057190]
add eax, 0x24f
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100358a0
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x58]
add esp, 8
lea ecx, [0x1005ee4c]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
xor esi, esi
sub esp, 0x20
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
call eax
cmp eax, 0
jne 0x10007bd0
mov eax, dword [ebp - 0x3c]
mov dword [eax], 0x105
mov eax, dword [ebp - 0x48]
mov dword [eax], 1
mov eax, dword [str.:a_a]
add eax, 0xd2da8bae
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x74], eax
mov eax, dword [0x1005e084]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax - 0x2d257452]
mov dword [ebp - 0x78], eax
lea ecx, [0x1005ee68]
lea eax, [0x10057190]
add eax, 0x293
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100363f0
add esp, 8
mov eax, dword [ebp - 0x78]
lea ecx, [0x1005ee68]
sub esp, 4
mov dword [esp], ecx
call eax
mov dword [ebp - 0x7c], eax
lea ecx, [0x1005ee7c]
lea eax, [0x10057190]
add eax, 0x2cd
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10036630
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x74]
add esp, 8
lea ecx, [0x1005ee7c]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x3c]
mov esi, eax
mov eax, dword [ebp - 0x38]
mov dword [eax], esi
mov eax, dword [eax]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
cmp eax, 0
je 0x10007534
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x88], ecx
sub eax, 0xd3a6ffdb
sub eax, 1
add eax, 0xd3a6ffdb
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x80]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x8e], cl
mov dl, al
xor dl, 0xff
mov byte [ebp - 0x8d], dl
xor cl, 0xff
mov byte [ebp - 0x8c], cl
mov cl, 1
xor cl, 1
mov byte [ebp - 0x8b], cl
and dl, 0xff
mov byte [ebp - 0x8a], dl
and al, cl
mov byte [ebp - 0x89], al
mov al, byte [ebp - 0x8b]
mov dl, byte [ebp - 0x8c]
mov cl, byte [ebp - 0x8d]
mov bl, byte [ebp - 0x89]
mov ah, byte [ebp - 0x8a]
mov dh, byte [ebp - 0x8e]
mov ch, dl
and ch, 0xff
and dh, al
or ah, bl
or ch, dh
xor ah, ch
mov byte [ebp - 0x91], ah
or cl, dl
xor cl, 0xff
mov byte [ebp - 0x90], cl
or al, 1
mov byte [ebp - 0x8f], al
mov al, byte [ebp - 0x91]
mov dl, byte [ebp - 0x8f]
mov cl, byte [ebp - 0x90]
and cl, dl
or al, cl
mov byte [ebp - 0x92], al
mov al, byte [ebp - 0x92]
test al, 1
jne 0x10006e3a
jmp 0x1000827f
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0xa0], ecx
add eax, 0xbc166a91
sub eax, 1
sub eax, 0xbc166a91
mov dword [ebp - 0x9c], eax
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x98]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0xa6], cl
mov dl, al
xor dl, 0xff
mov byte [ebp - 0xa5], dl
xor cl, 0xff
mov byte [ebp - 0xa4], cl
mov cl, 1
xor cl, 0
mov byte [ebp - 0xa3], cl
and dl, 0
mov byte [ebp - 0xa2], dl
and al, cl
mov byte [ebp - 0xa1], al
mov ah, byte [ebp - 0xa1]
mov dl, byte [ebp - 0xa2]
mov ch, byte [ebp - 0xa3]
mov cl, byte [ebp - 0xa6]
mov al, byte [ebp - 0xa4]
and al, 0
and cl, ch
or dl, ah
mov byte [ebp - 0xa8], dl
or al, cl
mov byte [ebp - 0xa7], al
mov dl, byte [ebp - 0xa3]
mov ah, byte [ebp - 0xa4]
mov cl, byte [ebp - 0xa5]
mov ch, byte [ebp - 0xa7]
mov al, byte [ebp - 0xa8]
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
mov byte [ebp - 0xa9], al
mov al, byte [ebp - 0xa9]
test al, 1
jne 0x10006f3b
jmp 0x1000827f
mov eax, dword [0x1005fde8]
mov dword [ebp - 0xb0], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
add eax, 0xe6dfcb9d
sub eax, 1
sub eax, 0xe6dfcb9d
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xb0]
imul eax, ecx
and eax, 1
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xbc]
cmp ecx, 0
sete cl
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [ebp - 0xbd], al
mov al, byte [ebp - 0xbd]
test al, 1
jne 0x10006fbb
jmp 0x10007fd1
mov eax, dword [0x1005fde8]
mov dword [ebp - 0xcc], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0xc8], ecx
add eax, 0xfc8a1e08
sub eax, 1
sub eax, 0xfc8a1e08
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xcc]
imul eax, ecx
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xd0]
and eax, 1
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd4]
cmp eax, 0
sete al
mov byte [ebp - 0xd5], al
mov al, byte [ebp - 0xd5]
mov ecx, dword [ebp - 0xc8]
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0xd7], dl
xor al, cl
mov byte [ebp - 0xd6], al
mov cl, byte [ebp - 0xd6]
mov al, byte [ebp - 0xd7]
or al, cl
test al, 1
jne 0x1000705a
jmp 0x10008293
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [0x1005fde8]
mov ecx, dword [0x1005fde4]
mov edx, eax
add edx, 0x987884c0
sub edx, 1
sub edx, 0x987884c0
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0xda], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0xd9], cl
xor al, 0xff
mov byte [ebp - 0xd8], al
mov al, byte [ebp - 0xda]
mov dl, byte [ebp - 0xd8]
mov cl, byte [ebp - 0xd9]
xor cl, 0xff
mov byte [ebp - 0xde], cl
mov cl, 1
xor cl, 0
mov byte [ebp - 0xdd], cl
and dl, 0
mov byte [ebp - 0xdc], dl
and al, cl
mov byte [ebp - 0xdb], al
mov cl, byte [ebp - 0xdd]
mov al, byte [ebp - 0xd9]
mov dl, byte [ebp - 0xde]
and dl, 0
mov byte [ebp - 0xe0], dl
and al, cl
mov byte [ebp - 0xdf], al
mov cl, byte [ebp - 0xdb]
mov al, byte [ebp - 0xdc]
or al, cl
mov byte [ebp - 0xe1], al
mov cl, byte [ebp - 0xde]
mov al, byte [ebp - 0xd8]
mov dl, byte [ebp - 0xe1]
mov ch, byte [ebp - 0xdf]
mov ah, byte [ebp - 0xe0]
or ah, ch
xor dl, ah
mov byte [ebp - 0xe3], dl
or al, cl
xor al, 0xff
mov byte [ebp - 0xe2], al
mov al, byte [ebp - 0xe3]
mov cl, byte [ebp - 0xe2]
mov dl, byte [ebp - 0xdd]
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x1000716a
jmp 0x10008293
mov eax, dword [0x1005fde8]
mov dword [ebp - 0xec], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xec]
sub eax, 0xf403d0e8
sub eax, 1
add eax, 0xf403d0e8
mov dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xec]
imul eax, ecx
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
and eax, 1
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xf8]
cmp ecx, 0
sete cl
mov byte [ebp - 0xfa], cl
cmp eax, 0xa
setl al
mov byte [ebp - 0xf9], al
mov dl, byte [ebp - 0xf9]
mov cl, byte [ebp - 0xfa]
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x10007202
jmp 0x10007fd1
jmp 0x10007207
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
mov al, byte [eax]
mov byte [ebp - 0x101], al
mov al, byte [ebp - 0x101]
movsx eax, al
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x108]
cmp eax, 0
setne al
mov byte [ebp - 0x109], al
mov al, byte [ebp - 0x109]
test al, 1
jne 0x10007254
jmp 0x100072c8
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
mov al, byte [eax]
mov byte [ebp - 0x111], al
mov al, byte [ebp - 0x111]
movsx eax, al
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x118]
imul eax, dword [ecx]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x11c]
mov dword [eax], ecx
jmp 0x1000729e
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x124]
mov dword [eax], ecx
jmp 0x10007207
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x128]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x130], ecx
sub eax, 0xd03149b1
sub eax, 1
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x12c]
add ecx, 0xd03149b1
imul eax, ecx
and eax, 1
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x134]
cmp eax, 0
sete al
mov byte [ebp - 0x135], al
mov cl, byte [ebp - 0x135]
mov eax, dword [ebp - 0x130]
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [ebp - 0x136], al
mov al, byte [ebp - 0x136]
test al, 1
jne 0x10007356
jmp 0x10007fde
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x144], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x140], ecx
sub eax, 0x17d2dfbe
sub eax, 1
add eax, 0x17d2dfbe
mov dword [ebp - 0x13c], eax
mov ecx, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x144]
imul eax, ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
and eax, 1
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x14c]
cmp eax, 0
sete al
mov byte [ebp - 0x14d], al
mov eax, dword [ebp - 0x140]
cmp eax, 0xa
setl al
mov byte [ebp - 0x14e], al
mov dl, byte [ebp - 0x14e]
mov cl, byte [ebp - 0x14d]
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x100073e9
jmp 0x10008284
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x15c], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x158], ecx
sub eax, 0x16fb2897
sub eax, 1
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x154]
add ecx, 0x16fb2897
imul eax, ecx
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x158]
mov eax, dword [ebp - 0x160]
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x163], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x162], cl
and al, cl
mov byte [ebp - 0x161], al
mov cl, byte [ebp - 0x162]
mov al, byte [ebp - 0x163]
xor al, cl
mov byte [ebp - 0x164], al
mov cl, byte [ebp - 0x164]
mov al, byte [ebp - 0x161]
or al, cl
mov byte [ebp - 0x165], al
mov al, byte [ebp - 0x165]
test al, 1
jne 0x10007493
jmp 0x10008284
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x174], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0x170], eax
xor eax, eax
sub eax, 1
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x174]
add eax, ecx
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x174]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x17b], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x17a], cl
and al, cl
mov byte [ebp - 0x179], al
mov al, byte [ebp - 0x179]
mov dl, byte [ebp - 0x17a]
mov cl, byte [ebp - 0x17b]
xor cl, dl
or al, cl
mov byte [ebp - 0x17c], al
mov al, byte [ebp - 0x17c]
test al, 1
jne 0x1000752f
jmp 0x10007fde
jmp 0x10007534
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0x180]
mov eax, 1
cmp eax, ecx
sete al
mov byte [ebp - 0x181], al
mov al, byte [ebp - 0x181]
test al, 1
jne 0x10007568
jmp 0x10007bcb
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x190], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x18c], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x190]
imul eax, ecx
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x194]
and eax, 1
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x198]
cmp ecx, 0
sete cl
mov byte [ebp - 0x19a], cl
cmp eax, 0xa
setl al
mov byte [ebp - 0x199], al
mov cl, byte [ebp - 0x199]
mov al, byte [ebp - 0x19a]
mov dl, al
and dl, cl
mov byte [ebp - 0x19c], dl
xor al, cl
mov byte [ebp - 0x19b], al
mov cl, byte [ebp - 0x19b]
mov al, byte [ebp - 0x19c]
or al, cl
test al, 1
jne 0x1000760d
jmp 0x10007fe3
mov eax, dword [ebp - 0x3c]
mov dword [eax], 0x105
mov eax, dword [str.:a_a]
mov eax, dword [eax - 0x2d257452]
mov dword [ebp - 0x1a0], eax
mov eax, dword [0x1005e084]
mov eax, dword [eax - 0x2d257452]
mov dword [ebp - 0x1b8], eax
lea ecx, [0x1005eea8]
lea eax, [0x10057190]
add eax, 0x34d
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10037d70
mov eax, dword [ebp - 0x1b8]
add esp, 8
lea ecx, [0x1005eea8]
sub esp, 4
mov dword [esp], ecx
call eax
mov dword [ebp - 0x1b4], eax
lea ecx, [0x1005ee94]
lea eax, [0x10057190]
add eax, 0x30b
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10036c70
mov edx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x1a0]
add esp, 8
lea ecx, [0x1005ee94]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x3c]
mov esi, eax
mov eax, dword [ebp - 0x30]
mov dword [eax], esi
mov eax, dword [eax]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
cmp eax, 0
setne al
mov byte [ebp - 0x1ad], al
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x1ac], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x1a8], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x1ac]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x1b9], al
mov cl, byte [ebp - 0x1b9]
mov eax, dword [ebp - 0x1a8]
cmp eax, 0xa
setl al
mov byte [ebp - 0x1c0], al
mov ah, cl
xor ah, 0xff
mov byte [ebp - 0x1bf], ah
xor al, 0xff
mov byte [ebp - 0x1be], al
mov dl, 1
xor dl, 1
mov byte [ebp - 0x1bd], dl
and ah, 0xff
mov byte [ebp - 0x1bc], ah
and cl, dl
mov byte [ebp - 0x1bb], cl
and al, 0xff
mov byte [ebp - 0x1ba], al
mov cl, byte [ebp - 0x1bb]
mov al, byte [ebp - 0x1bc]
mov ah, byte [ebp - 0x1bd]
mov dl, byte [ebp - 0x1c0]
and dl, ah
mov byte [ebp - 0x1c2], dl
or al, cl
mov byte [ebp - 0x1c1], al
mov dl, byte [ebp - 0x1bd]
mov ah, byte [ebp - 0x1be]
mov cl, byte [ebp - 0x1bf]
mov al, byte [ebp - 0x1c1]
mov dh, byte [ebp - 0x1c2]
mov ch, byte [ebp - 0x1ba]
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
test al, 1
jne 0x100077d7
jmp 0x10007fe3
mov al, byte [ebp - 0x1ad]
test al, 1
jne 0x100077ea
jmp 0x10007bc6
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x1d0], ecx
mov ecx, eax
add ecx, 0x6b4da3ac
sub ecx, 1
sub ecx, 0x6b4da3ac
imul eax, ecx
and eax, 1
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x1cc]
cmp eax, 0
sete al
mov byte [ebp - 0x1d1], al
mov cl, byte [ebp - 0x1d1]
mov eax, dword [ebp - 0x1d0]
cmp eax, 0xa
setl al
mov byte [ebp - 0x1d5], al
xor cl, 0xff
mov byte [ebp - 0x1d4], cl
xor al, 0xff
mov byte [ebp - 0x1d3], al
mov al, 1
xor al, 1
mov byte [ebp - 0x1d2], al
mov al, byte [ebp - 0x1d3]
mov dl, byte [ebp - 0x1d2]
mov cl, byte [ebp - 0x1d1]
mov ah, byte [ebp - 0x1d4]
and ah, 0xff
mov byte [ebp - 0x1d8], ah
and cl, dl
mov byte [ebp - 0x1d7], cl
and al, 0xff
mov byte [ebp - 0x1d6], al
mov dl, byte [ebp - 0x1d2]
mov ah, byte [ebp - 0x1d3]
mov cl, byte [ebp - 0x1d4]
mov ch, byte [ebp - 0x1d6]
mov bl, byte [ebp - 0x1d7]
mov al, byte [ebp - 0x1d8]
mov dh, byte [ebp - 0x1d5]
and dh, dl
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
test al, 1
jne 0x100078e5
jmp 0x100082a0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x1e4], ecx
sub eax, 0x35554278
sub eax, 1
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1e0]
add eax, 0x35554278
mov dword [ebp - 0x1e8], eax
mov ecx, dword [ebp - 0x1e4]
mov edx, dword [ebp - 0x1e8]
mov eax, dword [ebp - 0x1dc]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0x1ea], dl
xor al, cl
mov byte [ebp - 0x1e9], al
mov cl, byte [ebp - 0x1e9]
mov al, byte [ebp - 0x1ea]
or al, cl
test al, 1
jne 0x1000797a
jmp 0x100082a0
jmp 0x1000797f
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
mov al, byte [eax]
mov byte [ebp - 0x1f1], al
mov al, byte [ebp - 0x1f1]
movsx eax, al
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x1f8]
cmp eax, 0
setne al
mov byte [ebp - 0x1f9], al
mov al, byte [ebp - 0x1f9]
test al, 1
jne 0x100079cc
jmp 0x10007a42
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x200]
mov al, byte [eax]
mov byte [ebp - 0x201], al
mov al, byte [ebp - 0x201]
movsx eax, al
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x208]
mov ecx, dword [ebp - 0x20c]
imul ecx, edx
mov dword [eax], ecx
jmp 0x10007a18
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x210]
add eax, 1
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x214]
mov dword [eax], ecx
jmp 0x1000797f
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x218]
mov ecx, dword [0x1005fde4]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x21b], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x21a], cl
xor al, 0xff
mov byte [ebp - 0x219], al
mov al, byte [ebp - 0x21a]
xor al, 0xff
mov byte [ebp - 0x21d], al
mov al, 1
xor al, 1
mov byte [ebp - 0x21c], al
mov cl, byte [ebp - 0x21c]
mov al, byte [ebp - 0x21b]
mov dl, byte [ebp - 0x219]
and dl, 0xff
mov byte [ebp - 0x21f], dl
and al, cl
mov byte [ebp - 0x21e], al
mov cl, byte [ebp - 0x21c]
mov al, byte [ebp - 0x21a]
mov dl, byte [ebp - 0x21d]
and dl, 0xff
mov byte [ebp - 0x221], dl
and al, cl
mov byte [ebp - 0x220], al
mov dl, byte [ebp - 0x21c]
mov ah, byte [ebp - 0x21d]
mov cl, byte [ebp - 0x219]
mov dh, byte [ebp - 0x220]
mov ch, byte [ebp - 0x221]
mov bl, byte [ebp - 0x21e]
mov al, byte [ebp - 0x21f]
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
test al, 1
jne 0x10007b2f
jmp 0x100080c8
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x22c], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x22c]
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x230], eax
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x22c]
imul eax, ecx
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
and eax, 1
mov dword [ebp - 0x238], eax
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x238]
cmp ecx, 0
sete cl
mov byte [ebp - 0x23a], cl
cmp eax, 0xa
setl al
mov byte [ebp - 0x239], al
mov dl, byte [ebp - 0x239]
mov cl, byte [ebp - 0x23a]
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x10007bc1
jmp 0x100080c8
jmp 0x10007bc6
jmp 0x10007bcb
jmp 0x10007bd0
jmp 0x10007bd5
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x248], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x244], ecx
add eax, 0x61df915e
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
sub eax, 1
sub eax, 0x61df915e
mov dword [ebp - 0x24c], eax
mov ecx, dword [ebp - 0x24c]
mov eax, dword [ebp - 0x248]
imul eax, ecx
mov dword [ebp - 0x250], eax
mov ecx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x250]
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0x252], dl
xor al, cl
mov byte [ebp - 0x251], al
mov cl, byte [ebp - 0x251]
mov al, byte [ebp - 0x252]
or al, cl
test al, 1
jne 0x10007c68
jmp 0x10008289
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x25c], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x25c]
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x260], eax
mov ecx, dword [ebp - 0x260]
mov eax, dword [ebp - 0x25c]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x261], al
mov cl, byte [ebp - 0x261]
mov eax, dword [ebp - 0x258]
cmp eax, 0xa
setl dl
mov al, cl
xor al, 0xff
mov byte [ebp - 0x267], al
mov ch, dl
xor ch, 0xff
mov byte [ebp - 0x266], ch
mov ah, 1
xor ah, 1
mov byte [ebp - 0x265], ah
and al, 0xff
and cl, ah
and ch, 0xff
mov byte [ebp - 0x264], ch
and dl, ah
mov byte [ebp - 0x263], dl
or al, cl
mov byte [ebp - 0x262], al
mov cl, byte [ebp - 0x265]
mov dl, byte [ebp - 0x266]
mov al, byte [ebp - 0x267]
mov ah, byte [ebp - 0x262]
mov dh, byte [ebp - 0x263]
mov ch, byte [ebp - 0x264]
or ch, dh
xor ah, ch
mov byte [ebp - 0x269], ah
or al, dl
xor al, 0xff
or cl, 1
and al, cl
mov byte [ebp - 0x268], al
mov cl, byte [ebp - 0x268]
mov al, byte [ebp - 0x269]
or al, cl
test al, 1
jne 0x10007d56
jmp 0x100082ad
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x274], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x274]
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x278], eax
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x274]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x279], al
mov al, byte [ebp - 0x279]
mov ecx, dword [ebp - 0x270]
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0x27b], dl
xor al, cl
mov byte [ebp - 0x27a], al
mov cl, byte [ebp - 0x27a]
mov al, byte [ebp - 0x27b]
or al, cl
mov byte [ebp - 0x27c], al
mov al, byte [ebp - 0x27c]
test al, 1
jne 0x10007de8
jmp 0x100082ad
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x280]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x288], ecx
sub eax, 0xe7ea318b
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x284]
sub eax, 1
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x28c]
add ecx, 0xe7ea318b
imul eax, ecx
mov dword [ebp - 0x290], eax
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp - 0x290]
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0x292], dl
xor al, cl
mov byte [ebp - 0x291], al
mov cl, byte [ebp - 0x291]
mov al, byte [ebp - 0x292]
or al, cl
test al, 1
jne 0x10007e82
jmp 0x10008289
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x298]
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x2a0], ecx
add eax, 0xb810e195
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x29c]
sub eax, 1
sub eax, 0xb810e195
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x2a0]
mov edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x298]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [ebp - 0x2a6], dl
xor al, cl
mov byte [ebp - 0x2a5], al
mov cl, byte [ebp - 0x2a5]
mov al, byte [ebp - 0x2a6]
or al, cl
mov byte [ebp - 0x2a7], al
mov al, byte [ebp - 0x2a7]
test al, 1
jne 0x10007f1b
jmp 0x100080cd
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x2ac], eax
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x2b8], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x2b4], ecx
add eax, 0x105f2d4c
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b8]
mov ecx, dword [ebp - 0x2b0]
sub ecx, 1
sub ecx, 0x105f2d4c
imul eax, ecx
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x2b4]
mov eax, dword [ebp - 0x2bc]
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x2bf], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x2be], cl
and al, cl
mov byte [ebp - 0x2bd], al
mov al, byte [ebp - 0x2bd]
mov dl, byte [ebp - 0x2be]
mov cl, byte [ebp - 0x2bf]
xor cl, dl
or al, cl
mov byte [ebp - 0x2c0], al
mov al, byte [ebp - 0x2c0]
test al, 1
jne 0x10007fc4
jmp 0x100080cd
mov eax, dword [ebp - 0x2ac]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
jmp 0x10006fbb
jmp 0x10007356
mov eax, dword [ebp - 0x3c]
mov dword [eax], 0x105
mov eax, dword [str.:a_a]
mov dword [ebp - 0x2c4], eax
mov eax, dword [ebp - 0x2c4]
add eax, 0xd2da8bae
mov dword [ebp - 0x2c8], eax
mov eax, dword [ebp - 0x2c8]
mov eax, dword [eax]
mov dword [ebp - 0x2d0], eax
mov eax, dword [0x1005e084]
mov eax, dword [eax - 0x2d257452]
mov dword [ebp - 0x2cc], eax
lea ecx, [0x1005eea8]
lea eax, [0x10057190]
add eax, 0x34d
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10037d70
mov eax, dword [ebp - 0x2cc]
add esp, 8
lea ecx, [0x1005eea8]
sub esp, 4
mov dword [esp], ecx
call eax
mov dword [ebp - 0x2d4], eax
lea ecx, [0x1005ee94]
lea eax, [0x10057190]
add eax, 0x30b
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10036c70
mov edx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x2d0]
add esp, 8
lea ecx, [0x1005ee94]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], ecx
call eax
jmp 0x1000760d
jmp 0x10007b2f
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x2e0], eax
mov ecx, dword [0x1005fde4]
mov dword [ebp - 0x2dc], ecx
add eax, 0xd2ab6ae0
sub eax, 1
sub eax, 0xd2ab6ae0
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2d8]
mov eax, dword [ebp - 0x2e0]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [ebp - 0x2e6], al
cmp ecx, 0xa
setl cl
mov byte [ebp - 0x2e5], cl
xor al, 0xff
mov byte [ebp - 0x2e4], al
xor cl, 0xff
mov byte [ebp - 0x2e3], cl
mov cl, 1
xor cl, 0
mov byte [ebp - 0x2e2], cl
and al, 0
mov byte [ebp - 0x2e1], al
mov cl, byte [ebp - 0x2e2]
mov al, byte [ebp - 0x2e6]
and al, cl
mov byte [ebp - 0x2e7], al
mov ah, byte [ebp - 0x2e7]
mov al, byte [ebp - 0x2e1]
mov ch, byte [ebp - 0x2e2]
mov dl, byte [ebp - 0x2e5]
mov cl, byte [ebp - 0x2e3]
and cl, 0
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [ebp - 0x2e8], al
mov cl, byte [ebp - 0x2e3]
mov al, byte [ebp - 0x2e4]
or al, cl
xor al, 0xff
mov byte [ebp - 0x2e9], al
mov al, byte [ebp - 0x2e8]
mov cl, byte [ebp - 0x2e9]
mov dl, byte [ebp - 0x2e2]
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x100081ca
jmp 0x1000828e
mov eax, dword [0x1005fde8]
mov dword [ebp - 0x2f4], eax
mov eax, dword [0x1005fde4]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x2f4]
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [ebp - 0x2f8], eax
mov ecx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x2f4]
imul eax, ecx
and eax, 1
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x2f0]
mov ecx, dword [ebp - 0x2fc]
cmp ecx, 0
sete cl
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x10008238
jmp 0x1000828e
jmp 0x10007f1b
push eax
mov eax, esp
mov dword [ebp - 0x300], eax
sub esp, 0x108
mov eax, esp
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x304]
mov ecx, dword [ebp - 0x300]
mov dword [ecx], 0
sub esp, 8
mov dword [esp], 0x105
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
jmp 0x10006a5d
jmp 0x10006e3a
jmp 0x100073e9
jmp 0x10007c68
jmp 0x100081ca
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
jmp 0x1000705a
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
jmp 0x100078e5
jmp 0x10007d56