Function at 0x427030
Capabilities:
Encode data using xor
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x79467d
mov eax, dword fs:[0]
push eax
sub esp, 0x2f8
mov eax, dword [0x831184]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2bc], esi
mov dword [ebp - 0x2b8], esi
cmp eax, 0x1b
ja case.default.0x427078
jmp dword [eax*4 + 0x42799c]
mov edx, 0x26
lea ecx, [ebp - 0x230]
call fcn.00426fa0
mov dword [ebp - 4], 0
xor eax, eax
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
mov word [ebp - 0x248], ax
push 2
push eax
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x248]
call fcn.00404700
lea eax, [ebp - 0x248]
mov ecx, esi
push eax
call fcn.00404070
lea ecx, [ebp - 0x248]
call fcn.00404490
jmp 0x42710c
movups xmm0, xmmword [0x7cd394]
sub esp, 0x10
lea ecx, [ebp - 0x230]
mov eax, esp
movups xmmword [eax], xmm0
call fcn.00426e90
add esp, 0x10
push eax
mov ecx, esi
call fcn.00404070
lea ecx, [ebp - 0x230]
call fcn.00404490
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0076eb7e
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x218]
push eax
push 0x100
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
test eax, eax
jne 0x42716d
push eax
mov word [ebp - 0x248], ax
push 0x7cf388
jmp 0x427197
xor eax, eax
lea ecx, [ebp - 0x218]
mov word [ebp - 0x248], ax
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x427180
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x248]
call fcn.004044f0
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x230]
call fcn.00404070
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 2
call fcn.00404490
push esi
lea ecx, [ebp - 0x230]
call fcn.00414d60
jmp 0x42710c
push 0x104
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
push ecx
lea eax, [ebp - 0x218]
mov ecx, esi
push eax
call fcn.004286f0
jmp 0x427117
mov edx, 0x28
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x1a
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x1c
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x23
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x26
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
xor edx, edx
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x19
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0xb
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x16
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 2
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x17
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 7
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
mov edx, 0x18
lea ecx, [ebp - 0x230]
call fcn.00426fa0
jmp 0x427104
lea eax, [ebp - 0x230]
push 8
push eax
call fcn.00427030
add esp, 8
push eax
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 3
call fcn.00404120
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 5
call fcn.00404490
push ecx
lea ecx, [ebp - 0x2e4]
mov dword [ebp - 0x2e4], 5
mov dword [ebp - 0x2e0], 0xd20081
mov dword [ebp - 0x2dc], 0x9a0093
mov dword [ebp - 0x2d8], 0xae0084
call fcn.00403e20
push eax
lea ecx, [ebp - 0x248]
call fcn.00428540
cmp eax, 0xffffffff
je 0x4273b7
dec eax
lea ecx, [ebp - 0x248]
push eax
push 0
lea eax, [ebp - 0x2ec]
push eax
call fcn.00403fb0
push eax
mov ecx, esi
call fcn.00404070
lea ecx, [ebp - 0x2ec]
call fcn.00404490
lea ecx, [ebp - 0x248]
jmp 0x427112
lea eax, [ebp - 0x248]
mov ecx, esi
push eax
call fcn.00404070
lea ecx, [ebp - 0x248]
jmp 0x427112
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x248], 8
mov dword [ebp - 0x244], 0xd300fa
mov dword [ebp - 0x240], 0xd800d8
mov dword [ebp - 0x23c], 0xc300c8
mov dword [ebp - 0x238], 0x82009c
mov dword [ebp - 0x234], 0xb1
call fcn.00403e20
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2b8]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 6
push 2
push eax
call fcn.00427030
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x230]
push ecx
push eax
push esi
call fcn.00414e20
add esp, 0x14
lea ecx, [ebp - 0x2d4]
call fcn.00404490
jmp 0x42710c
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x248], 8
mov dword [ebp - 0x244], 0xd300fa
mov dword [ebp - 0x240], 0xfb00d8
mov dword [ebp - 0x23c], 0xf900e2
mov dword [ebp - 0x238], 0x840099
mov dword [ebp - 0x234], 0xb1
call fcn.00403e20
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2b8]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 8
push 2
push eax
call fcn.00427030
mov byte [ebp - 4], 9
jmp 0x42744a
lea ecx, [ebp - 0x254]
mov dword [ebp - 0x254], 0xf
mov dword [ebp - 0x250], 0xf900f5
mov dword [ebp - 0x24c], 0xdf00d2
mov dword [ebp - 0x248], 0xcb00d9
mov dword [ebp - 0x244], 0x8300c2
mov dword [ebp - 0x240], 0xee0083
mov dword [ebp - 0x23c], 0xd500e7
mov dword [ebp - 0x238], 0xdd00c6
mov dword [ebp - 0x234], 0xb800c4
call fcn.00403e20
mov edx, 0x24
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00426fa0
mov dword [ebp - 4], 0xa
push edi
push eax
lea eax, [ebp - 0x2d4]
push eax
call fcn.00408060
add esp, 0xc
mov ecx, esi
push eax
call fcn.00404070
lea ecx, [ebp - 0x2d4]
call fcn.00404490
jmp 0x42710c
lea ecx, [ebp - 0x244]
mov dword [ebp - 0x244], 6
mov dword [ebp - 0x240], 0xfe00f5
mov dword [ebp - 0x23c], 0xdf00ca
mov dword [ebp - 0x238], 0xdd00c6
mov dword [ebp - 0x234], 0xaf
call fcn.00403e20
mov edx, 0x24
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00426fa0
mov dword [ebp - 4], 0xb
jmp 0x427568
lea ecx, [ebp - 0x244]
mov dword [ebp - 0x244], 7
mov dword [ebp - 0x240], 0xd800cd
mov dword [ebp - 0x23c], 0xda00c2
mov dword [ebp - 0x238], 0xdc00c8
mov dword [ebp - 0x234], 0xb000dc
call fcn.00403e20
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2b8]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0xc
push 0xa
push eax
call fcn.00427030
mov byte [ebp - 4], 0xd
jmp 0x42744a
lea ecx, [ebp - 0x244]
mov dword [ebp - 0x244], 7
mov dword [ebp - 0x240], 0xd800cd
mov dword [ebp - 0x23c], 0xda00c2
mov dword [ebp - 0x238], 0xdc00c8
mov dword [ebp - 0x234], 0xb000dc
call fcn.00403e20
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2b8]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0xe
push 0xb
push eax
call fcn.00427030
mov byte [ebp - 4], 0xf
jmp 0x42744a
lea eax, [ebp - 0x2b0]
push eax
call fcn.00427a10
mov ecx, eax
call fcn.00403e20
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2b8]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0x10
push 5
push eax
call fcn.00427030
mov byte [ebp - 4], 0x11
jmp 0x42744a
lea eax, [ebp - 0x2b4]
push eax
call fcn.00427b00
mov edi, eax
xor ecx, ecx
mov edx, dword [edi]
lea eax, [edi + 4]
mov dword [ebp - 0x2b8], eax
test edx, edx
je 0x42775f
mov esi, eax
lea eax, [ecx + 0xa9]
xor word [esi + ecx*2], ax
inc ecx
mov edx, dword [edi]
cmp ecx, edx
jb 0x427742
mov esi, dword [ebp - 0x2bc]
mov eax, dword [ebp - 0x2b8]
xor ecx, ecx
mov dword [ebp - 0x2bc], eax
mov word [eax + edx*2], cx
lea eax, [ebp - 0x2bc]
push ecx
push eax
lea ecx, [ebp - 0x230]
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0x12
push 5
push eax
call fcn.00427030
mov byte [ebp - 4], 0x13
jmp 0x42744a
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x25c], 0x13
mov dword [ebp - 0x258], 0xc600ea
mov dword [ebp - 0x254], 0xdf00ca
mov dword [ebp - 0x250], 0xc700de
mov dword [ebp - 0x24c], 0xe300cc
mov dword [ebp - 0x248], 0xd700d9
mov dword [ebp - 0x244], 0xd800df
mov dword [ebp - 0x240], 0xe600e9
mov dword [ebp - 0x23c], 0xd600de
mov dword [ebp - 0x238], 0xdf00d7
mov dword [ebp - 0x234], 0xbc00df
call fcn.00403e20
mov dword [ebp - 0x2bc], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2bc]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0x14
push 5
push eax
call fcn.00427030
mov byte [ebp - 4], 0x15
jmp 0x42744a
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x288], 0x29
mov dword [ebp - 0x284], 0xe700f5
mov dword [ebp - 0x280], 0xcf00c2
mov dword [ebp - 0x27c], 0xc100df
mov dword [ebp - 0x278], 0xdf00dc
mov dword [ebp - 0x274], 0xc600d7
mov dword [ebp - 0x270], 0xfd00ef
mov dword [ebp - 0x26c], 0xc200db
mov dword [ebp - 0x268], 0xca00d2
mov dword [ebp - 0x264], 0xdf00d7
mov dword [ebp - 0x260], 0x9c00cf
mov dword [ebp - 0x25c], 0xc600f8
mov dword [ebp - 0x258], 0xac00cf
mov dword [ebp - 0x254], 0xb000ae
mov dword [ebp - 0x250], 0xb600a6
mov dword [ebp - 0x24c], 0x970099
mov dword [ebp - 0x248], 0xa100b2
mov dword [ebp - 0x244], 0xa100aa
mov dword [ebp - 0x240], 0x8000eb
mov dword [ebp - 0x23c], 0xbb00ac
mov dword [ebp - 0x238], 0xb300a1
mov dword [ebp - 0x234], 0xd200b9
call fcn.00403e20
mov dword [ebp - 0x2bc], eax
lea ecx, [ebp - 0x230]
push 0
lea eax, [ebp - 0x2bc]
push eax
call fcn.00428690
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 0x16
push 5
push eax
call fcn.00427030
mov byte [ebp - 4], 0x17
jmp 0x42744a
lea eax, [ebp - 0x304]
push eax
call fcn.00427c00
mov ecx, eax
call fcn.004131e0
push eax
lea ecx, [ebp - 0x2e0]
call fcn.004141a0
push 0x826a74
lea eax, [ebp - 0x2e0]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
out 0x70, eax
inc edx
add byte [ecx + esi*2], dh
inc edx
add bh, dl
jno 0x4279e9
add ch, bh
jno 0x4279ed
add byte [edi + 0x70], bh
inc edx
add byte [edx], dl
jb 0x4279f5
add byte [edi], ah
jb 0x4279f9
add byte [edx + esi*2], bh
inc edx
add byte [ecx + 0x72], dl
inc edx
add byte [ebx], cl
jae 0x427a05
add al, dl
jae 0x427a09
add byte [ebx + 0x74], ch
inc edx
add byte [esi + 0x72], ah
inc edx
add byte [eax + 0x72], bh
inc edx
add byte [ebp - 0x5dffbd8e], cl
jb 0x427a1d
add byte [edi - 0x33ffbd8e], dh
jb 0x427a25
add cl, ah
jb 0x427a29
add dh, dh
jb 0x427a2d
add dl, ch
je 0x427a31
add byte [ecx - 0x13ffbd8b], dl
jne 0x427a39
add byte [ecx + 0x76], ah
inc edx
jbe 0x427a3d
add dh, dl
jbe 0x427a41
add byte [ecx], ah
ja 0x427a45
add byte [edi + esi*2 + 0x784d0042], bl
ja 0x427a49
add byte [ebp + 0x78], cl
js 0x427a4d
inc edx
add ah, cl
int3
cmp al, 0
add byte [eax], al
mov dword [eax + 4], 0xc300e4
mov dword [eax + 8], 0xde00c8
add bl, al
add bh, al
inc eax
or al, cl
add dh, bl
add bh, al
inc eax
fiadd word [eax]
mov dword [eax + 0xc], 0xdd00c2
mov dword [eax + 0x10], 0xd600c0
or al, 0xc2
add ch, bl
add bh, al
inc eax
adc al, al
add dh, dl
rol byte [eax], 0xd6
add bh, al
inc eax
adc al, 0xc5
mov dword [eax + 0x14], 0xee00c5
mov dword [eax + 0x18], 0xda00fa
add dh, ch
add bh, al
inc eax
sbb dl, bh
add dl, bl
add bh, al
inc eax
fiadd dword [eax]
mov dword [eax + 0x1c], 0xd300c1
mov dword [eax + 0x20], 0xd600c5
mov dword [eax + 0x24], 0xce00dc
mov dword [eax + 0x28], 0xf9009b
mov dword [eax + 0x2c], 0xce00c5
mov dword [eax + 0x30], 0xaf00d3
mov dword [eax + 0x34], 0xa700b3
mov dword [eax + 0x38], 0x9800b1
mov dword [eax + 0x3c], 0xb30094
mov dword [eax + 0x40], 0xab00ae
mov dword [eax + 0x44], 0xea00a2
mov dword [eax + 0x48], 0xad0087
mov dword [eax + 0x4c], 0xa000b8
mov dword [eax + 0x50], 0xb800ac
mov dword [eax + 0x54], 0x87008d
sbb al, 0xc1
add bl, dl
add bh, al
inc eax
and ch, al
add dh, dl
add bh, al
inc eax
and al, 0xdc
add dh, cl
add bh, al
inc eax
sub byte [ebx - 0x38ff0700], bl
inc eax
sub al, 0xc5
add dh, cl
add bh, al
inc eax
xor bl, dl
add byte [edi + 0x3440c700], ch
mov bl, 0
cmpsd dword [esi], dword es:[edi]
add bh, al
inc eax
cmp byte [ecx - 0x38ff6800], dh
inc eax
cmp al, 0x94
add byte [ebx + 0x4040c700], dh
scasb al, byte es:[edi]
add byte [ebx + 0x4440c700], ch
mov byte [0xc700ea00], al
inc eax
dec eax
xchg dword [eax], eax
lodsd eax, dword [esi]
add bh, al
inc eax
dec esp
mov eax, 0xc700a000
inc eax
push eax
lodsb al, byte [esi]
add byte [eax + 0x5440c700], bh
lea eax, [eax]
xchg dword [eax], eax
mov dword [eax + 0x58], 0xb100a0
mov dword [eax + 0x5c], 0xf600a7
mov dword [eax + 0x60], 0xb10087
mov dword [eax + 0x64], 0xb400b7
mov dword [eax + 0x68], 0xb800be
mov dword [eax + 0x6c], 0x8a0081
mov dword [eax + 0x70], 0x9300be
mov dword [eax + 0x74], 0xa0008a
mov dword [eax + 0x78], 0x960082
mov dword [eax + 0x7c], 0xe5
pop ebx
pop ebp
ret 4