Function at 0x424033
Capabilities:
Create thread
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ae27b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x1fc
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 0x20]
test eax, eax
je 0x4243ba
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0xc8], 0x1253
mov dword [ebp - 0x150], str.cutcgb_swhstkep_tqeaptkhr_mfphjf_ddt_qfvc
cmp dword [ebp - 0xc8], 0x14ba
jle 0x42411e
push 0
push 0xf32
push 0
push 0
push 0x10bb
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
and dword [ebp - 0x60], 0
jmp 0x4240b6
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0x4545
jge 0x42411e
and dword [ebp - 0x74], 0
jmp 0x4240cc
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0x1c8b
jge 0x42411c
and dword [ebp - 0x50], 0
jmp 0x4240e2
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x39ef
jge 0x42411a
mov eax, dword [ebp - 0x60]
imul eax, dword [ebp - 0x74]
xor eax, dword [ebp - 0x50]
cdq
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], edx
push dword [ebp - 0x17c]
push dword [ebp - 0x180]
mov ecx, 0xabbe58
call fcn.0042fa2a
jmp 0x4240db
jmp 0x4240c5
jmp 0x4240af
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0xe0], eax
and dword [ebp - 4], 0
cmp dword [ebp - 0xc8], 0x10e5
jge 0x424147
mov edx, dword [ebp - 0x150]
mov ecx, 0xabbe58
call fcn.004313d0
jmp 0x424163
or dword [ebp - 4], 0xffffffff
jmp 0x42416d
lea eax, [ebp + 0xc]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x174]
movzx eax, byte [eax]
test eax, eax
je 0x424351
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x100], eax
push 0
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
mov ecx, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov eax, dword [ebp - 0x30]
cmp dword [eax], 0
jne 0x424271
mov eax, dword [ebp - 0x20]
push dword [eax]
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
mov ecx, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x30]
cmp dword [eax], 0
jne 0x424271
and dword [ebp - 0x170], 0
jmp 0x42427b
mov dword [ebp - 0x170], 1
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x30]
mov esi, dword [eax]
mov eax, dword [ebp - 0x20]
push dword [eax]
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
sub esi, dword [eax]
mov eax, dword [ebp - 0x70]
cmp esi, dword [eax]
jge 0x4242aa
mov dword [ebp - 0x80], 1
jmp 0x4242ae
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
add eax, 0xc80f
mov ecx, dword [ebp - 0x100]
cmp eax, dword [ecx]
jl 0x4242cc
mov dword [ebp - 0x160], 1
jmp 0x4242d3
and dword [ebp - 0x160], 0
or eax, 0xffffffff
jne 0x4242e8
push 9
pop eax
test eax, eax
jne 0x4242e8
and dword [ebp - 0x108], 0
jmp 0x4242f2
mov dword [ebp - 0x108], 1
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x20]
push dword [eax]
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
mov ecx, dword [ebp - 0x30]
mov eax, dword [eax]
sub eax, dword [ecx]
je 0x424324
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
je 0x424324
and dword [ebp - 0xc4], 0
jmp 0x42432e
mov dword [ebp - 0xc4], 1
push 0
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
mov esi, dword [ebp - 0xc4]
sub esi, dword [eax]
mov eax, dword [ebp - 0x20]
push dword [eax]
mov ecx, dword [ebp - 0x2c]
call fcn.0042fc2d
mov dword [eax], esi
jmp 0x4243b5
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x128]
mov ecx, dword [ecx]
add ecx, dword [eax]
mov eax, dword [ebp - 0x15c]
mov eax, dword [eax]
mov dword [eax], ecx
jmp 0x424b1b
mov dword [ebp - 0x78], 0x65cc
mov dword [ebp - 0x130], str.hwwiuv_jzawn_xzd
cmp dword [ebp - 0x78], 0x65f9
jle 0x42444a
and dword [ebp - 0x58], 0
jmp 0x4243e1
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0x5fd3
jge 0x42444a
and dword [ebp - 0x68], 0
jmp 0x4243f7
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0x2645
jge 0x424448
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x68]
cdq
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], edx
push dword [ebp - 0x188]
push dword [ebp - 0x18c]
lea ecx, [ebp - 0x1f4]
call fcn.004018f3
pop ecx
pop ecx
mov ecx, eax
call fcn.0042fa1f
push eax
call fcn.00498447
pop ecx
lea ecx, [ebp - 0x1f4]
call fcn.0042fa15
jmp 0x4243f0
jmp 0x4243da
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10c], eax
mov dword [ebp - 4], 2
cmp dword [ebp - 0x78], 0x63b3
jge 0x42446f
push dword [ebp - 0x130]
call fcn.00498447
pop ecx
jmp 0x42448b
or dword [ebp - 4], 0xffffffff
jmp 0x424495
lea eax, [ebp + 0x10]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x164]
movzx eax, byte [eax]
test eax, eax
je 0x424ab8
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x34], 2
mov dword [ebp - 0xac], 0xa1c17c77
mov dword [ebp - 0x184], 0xfe81720d
mov byte [ebp - 0x18], 0
movzx eax, byte [ebp - 0x18]
test eax, eax
je 0x4244f4
push 0
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_RegGetKeySecurity]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
cmp dword [ebp - 0x34], eax
jle 0x424520
mov dword [ebp - 0x94], 1
jmp 0x424527
and dword [ebp - 0x94], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x94], eax
jl 0x424544
cmp dword [ebp - 0x34], 0
je 0x424544
mov dword [ebp - 0x16c], 1
jmp 0x42454b
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jne 0x42455f
mov dword [ebp - 0xbc], 1
jmp 0x424566
and dword [ebp - 0xbc], 0
cmp dword [ebp - 0xbc], 0xfff9
jne 0x42457e
mov dword [ebp - 0x138], 1
jmp 0x424585
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1d0], eax
cmp dword [ebp - 0x1c], 1
jg 0x4245a0
mov dword [ebp - 0x9c], 1
jmp 0x4245a7
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x14], 0x576c3a0b
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x7c], 0xba22e974
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x98], 0x703c
mov dword [ebp - 0xdc], 0xffffffff
mov dword [ebp - 0x1a4], 0xffffffff
mov dword [ebp - 0x1a8], 0x51ac06e3
push 1
lea ecx, [ebp - 0x1cc]
call fcn.0042fb3f
mov dword [ebp - 0x48], 0
jmp 0x424614
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jge 0x424630
push dword [ebp - 0x48]
lea ecx, [ebp - 0x1cc]
call fcn.0042fc2d
mov dword [eax], 9
jmp 0x42460d
cmp dword [ebp - 0x14], 0xafcb143e
jbe 0x424645
mov dword [ebp - 0xb4], 1
jmp 0x42464c
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0xb4]
jne 0x424663
mov dword [ebp - 0xd0], 1
jmp 0x42466a
and dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x24], eax
jge 0x424684
mov dword [ebp - 0xa4], 1
jmp 0x42468b
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1d4], eax
cmp dword [ebp - 0x28], 0x86e3e45b
jne 0x4246b2
mov dword [ebp - 0xd4], 1
jmp 0x4246b9
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x7c], eax
jne 0x4246cd
mov dword [ebp - 0x84], 1
jmp 0x4246d4
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x84], eax
je 0x4246eb
mov dword [ebp - 0x90], 1
jmp 0x4246f2
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0x98]
add eax, dword [ebp - 0x98]
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x28], 0xfffffff1
jmp 0x42471e
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x29
jge 0x424819
mov dword [ebp - 0xec], 0xa77b69c9
mov dword [ebp - 0xa8], 0x89fa
mov dword [ebp - 0x4c], 0
jmp 0x42474c
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 2
jge 0x424762
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x1dc], 0
jmp 0x424745
mov dword [ebp - 0x24], 0x10
jmp 0x424772
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x1d
jl 0x424807
mov dword [ebp - 0x44], 0
jmp 0x42478c
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x4247a2
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0xe4], 0x1094
jmp 0x424785
mov dword [ebp - 0x14], 0x14
jmp 0x4247b2
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x1f
jge 0x4247d3
mov byte [ebp - 0x17], 0
movzx eax, byte [ebp - 0x17]
test eax, eax
je 0x4247d1
push 0
push 0x115e
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
jmp 0x4247ab
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xe4], 0xffffffff
ja 0x4247ef
mov dword [ebp - 0xa0], 1
jmp 0x4247f6
and dword [ebp - 0xa0], 0
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xec], eax
jmp 0x42476b
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
jmp 0x424717
lea ecx, [ebp - 0x1cc]
call fcn.0042fc11
mov dword [ebp - 0xb0], 0x1a3d
mov dword [ebp - 0xf4], str.wsgkk_uhnv_llnqfmtmi
cmp dword [ebp - 0xb0], 0x1d02
jle 0x4248c1
and dword [ebp - 0x54], 0
jmp 0x424851
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x1692
jge 0x4248b9
and dword [ebp - 0x5c], 0
jmp 0x424867
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0x712d
jge 0x4248b7
mov eax, dword [ebp - 0x54]
and eax, dword [ebp - 0x5c]
cdq
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], edx
push dword [ebp - 0x13c]
push dword [ebp - 0x140]
lea ecx, [ebp - 0x20c]
call fcn.004018f3
pop ecx
pop ecx
mov ecx, eax
call fcn.0042fa1f
push eax
call fcn.00498447
pop ecx
lea ecx, [ebp - 0x20c]
call fcn.0042fa15
jmp 0x424860
jmp 0x42484a
push 0
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov dword [ebp - 0x19c], 0xa5d6c05b
mov dword [ebp - 0x198], 0xa5d6c05b
mov dword [ebp - 0x194], 0xa5d6c05b
mov dword [ebp - 0x190], 0xa5d6c05b
mov dword [ebp - 4], 4
cmp dword [ebp - 0xb0], 0x17cd
jge 0x424908
push dword [ebp - 0xf4]
call fcn.00498447
pop ecx
jmp 0x424924
or dword [ebp - 4], 0xffffffff
jmp 0x42492e
mov dword [ebp - 0x6c], 7
mov dword [ebp - 0x38], 0x188e17b8
mov dword [ebp - 0xfc], 5
mov dword [ebp - 0xb8], 0x66d2
mov dword [ebp - 0x64], 0
jmp 0x424960
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 2
jge 0x424976
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x8c], 0x8da8e97e
jmp 0x424959
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x8c], 0
jmp 0x4249a4
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x8c]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x8c], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x8c], 3
jg 0x4249e3
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x3c], 0
jmp 0x4249cb
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 4
jge 0x4249e1
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x19c], 0
jmp 0x4249c4
jmp 0x424989
mov dword [ebp - 0x6c], 0
jmp 0x4249f3
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xfffffffa
jg 0x424a45
mov dword [ebp - 0x104], 0xfffffffd
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x38]
mov dword [ebp + eax - 0x8c], ecx
mov dword [ebp - 0x38], 0
jmp 0x424a23
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xc
jne 0x424a43
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x104], eax
jmp 0x424a1c
jmp 0x4249ec
mov byte [ebp - 0x16], 0
mov dword [ebp - 0x1b0], 1
mov dword [ebp - 0x1c0], 1
mov dword [ebp - 0x1bc], 1
mov dword [ebp - 0x1b8], 1
mov dword [ebp - 0x1b4], 1
mov dword [ebp - 0xc0], 0
mov byte [ebp - 0x15], 0
movzx eax, byte [ebp - 0x15]
test eax, eax
je 0x424a99
push 0
call dword [sym.imp.USER32.dll_DestroyAcceleratorTable]
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
movzx eax, byte [ebp - 0x16]
test eax, eax
je 0x424ab6
push 0
call dword [sym.imp.USER32.dll_DestroyAcceleratorTable]
jmp 0x424b1b
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
jmp 0x424afb
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
mov eax, dword [ebp - 0x40]
cmp dword [eax], 1
jge 0x424b1b
mov eax, dword [ebp - 0x40]
push dword [eax]
mov ecx, dword [ebp - 0x12c]
call fcn.0042fc2d
mov dword [eax], 0x198a8f93
jmp 0x424af0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret