Function at 0x422ad0
Capabilities:
Check mutex and terminate process on windows
Check mutex on windows
Create process on windows
Delete file
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x45144c
mov eax, dword fs:[0]
push eax
sub esp, 0x1d8
mov eax, dword [0x4612b0]
xor eax, esp
mov dword [esp + 0x1d0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4612b0]
xor eax, esp
push eax
lea eax, [esp + 0x1ec]
mov dword fs:[0], eax
mov eax, dword [esp + 0x1fc]
mov dword [esp + 0x18], eax
add eax, 0x2d8
xor ebx, ebx
mov dword [esp + 0x28], ebx
mov ecx, dword [eax + 0x10]
sub ecx, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
mov eax, 0xea0ea0eb
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x423975
mov ebp, 2
cmp dword [0x4628e0], ebp
jne 0x422c4a
push ebp
lea ecx, [esp + 0x34]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x18], 0xf
lea edi, [esi + 4]
mov dword [esi + 0x14], ebx
mov byte [edi], bl
mov eax, dword [esi + 0x18]
mov dword [esp + 0x50], esp
cmp eax, 0x10
jb 0x422b7f
mov ecx, dword [edi]
jmp 0x422b81
mov ecx, edi
cmp ecx, 0x457320
ja 0x422bbb
cmp eax, 0x10
jb 0x422b92
mov ecx, dword [edi]
jmp 0x422b94
mov ecx, edi
mov edx, dword [esi + 0x14]
add edx, ecx
cmp edx, 0x457320
jbe 0x422bbb
cmp eax, 0x10
jb 0x422ba8
mov edi, dword [edi]
push ebp
mov eax, 0x457320
sub eax, edi
push eax
push esi
mov ecx, esi
call fcn.00402d80
jmp 0x422bf7
cmp eax, ebp
jae 0x422bcb
mov ecx, dword [esi + 0x14]
push ecx
push ebp
mov ecx, esi
call fcn.004034b0
mov ecx, dword [esi + 0x18]
cmp ecx, 0x10
jb 0x422bd7
mov eax, dword [edi]
jmp 0x422bd9
mov eax, edi
push ebp
push 0x457320
push ecx
push eax
call fcn.00439429
add esp, 0x10
cmp dword [esi + 0x18], 0x10
mov dword [esi + 0x14], ebp
jb 0x422bf4
mov edi, dword [edi]
mov byte [edi + 2], bl
lea esi, [esp + 0xa8]
call fcn.004016b0
mov dword [esp + 0x1fc], 0
mov dword [esp + 0x30], 1
call fcn.00401ad0
cmp dword [eax + 0x18], 0x10
mov ebx, 3
jb 0x422c2b
mov eax, dword [eax + 4]
jmp 0x422c2e
add eax, 4
mov edx, dword [0x4628e4]
push eax
mov eax, dword [edx + 4]
push eax
call fcn.0043af0e
add esp, 0xc
mov byte [esp + 0x17], 1
test eax, eax
je 0x422c4f
mov byte [esp + 0x17], 0
mov ebp, 0x10
test bl, 2
je 0x422c84
and ebx, 0xfffffffd
cmp dword [esp + 0x48], ebp
jb 0x422c6f
mov ecx, dword [esp + 0x34]
push ecx
call fcn.004393c9
add esp, 4
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], 0
mov byte [esp + 0x34], 0
mov dword [esp + 0x1f4], 0xffffffff
test bl, 1
je 0x422ca0
lea esi, [esp + 0x84]
call fcn.00429e20
cmp byte [esp + 0x17], 0
jne 0x4234e0
xor ebx, ebx
push ebx
push 0x100
lea edx, [esp + 0x38]
push edx
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x18], 0xf
lea edi, [esi + 4]
mov dword [esi + 0x14], ebx
mov byte [edi], bl
mov eax, dword [esi + 0x18]
mov dword [esp + 0x54], esp
cmp eax, ebp
jb 0x422cdb
mov ecx, dword [edi]
jmp 0x422cdd
mov ecx, edi
cmp ecx, 0x457324
ja 0x422d16
cmp eax, ebp
jb 0x422ced
mov ecx, dword [edi]
jmp 0x422cef
mov ecx, edi
mov edx, dword [esi + 0x14]
add edx, ecx
cmp edx, 0x457324
jbe 0x422d16
cmp eax, ebp
jb 0x422d02
mov edi, dword [edi]
push 0x14
mov eax, 0x457324
sub eax, edi
push eax
push esi
mov ecx, esi
call fcn.00402d80
jmp 0x422d58
cmp eax, 0x14
jae 0x422d28
mov ecx, dword [esi + 0x14]
push ecx
push 0x14
mov ecx, esi
call fcn.004034b0
mov ecx, dword [esi + 0x18]
cmp ecx, ebp
jb 0x422d33
mov eax, dword [edi]
jmp 0x422d35
mov eax, edi
push 0x14
push 0x457324
push ecx
push eax
call fcn.00439429
add esp, 0x10
mov dword [esi + 0x14], 0x14
cmp dword [esi + 0x18], ebp
jb 0x422d54
mov edi, dword [edi]
mov byte [edi + 0x14], 0
lea esi, [esp + 0xac]
call fcn.004016b0
mov dword [esp + 0x200], 3
call fcn.00401ca0
mov byte [esp + 0x1fc], 4
cmp dword [eax + 0x18], ebp
jb 0x422d86
mov eax, dword [eax + 4]
jmp 0x422d89
add eax, 4
push eax
lea edx, [esp + 0x2c]
push edx
call fcn.0040f570
mov edi, dword [esp + 0x1c]
add edi, 0x244
push eax
mov byte [esp + 0x1fc], 5
mov dword [esp + 0x34], edi
call fcn.0042da00
movzx edi, al
add esp, 8
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x2c], edi
mov byte [esp + 0x1f8], 4
call fcn.0040f660
cmp dword [esp + 0x48], ebp
jb 0x422ddf
mov ecx, dword [esp + 0x34]
push ecx
call fcn.004393c9
add esp, 4
lea esi, [esp + 0x84]
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], ebx
mov byte [esp + 0x34], 0
call fcn.00429e20
mov dword [esp + 0x1c4], 0xf
mov dword [esp + 0x1c0], ebx
mov byte [esp + 0x1b0], 0
mov dword [esp + 0x1f4], 6
cmp edi, ebx
je 0x423100
push ebx
lea edx, [esp + 0x50]
push edx
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x18], 0xf
lea edi, [esi + 4]
mov dword [esi + 0x14], ebx
mov byte [edi], 0
mov eax, dword [esi + 0x18]
mov dword [esp + 0x44], esp
cmp eax, ebp
jb 0x422e53
mov ecx, dword [edi]
jmp 0x422e55
mov ecx, edi
cmp ecx, str.i:6B
ja 0x422e8e
cmp eax, ebp
jb 0x422e65
mov ecx, dword [edi]
jmp 0x422e67
mov ecx, edi
mov edx, dword [esi + 0x14]
add edx, ecx
cmp edx, str.i:6B
jbe 0x422e8e
cmp eax, ebp
jb 0x422e7a
mov edi, dword [edi]
push 0xa
mov eax, str.i:6B
sub eax, edi
push eax
push esi
mov ecx, esi
call fcn.00402d80
jmp 0x422ed0
cmp eax, 0xa
jae 0x422ea0
mov ecx, dword [esi + 0x14]
push ecx
push 0xa
mov ecx, esi
call fcn.004034b0
mov ecx, dword [esi + 0x18]
cmp ecx, ebp
jb 0x422eab
mov eax, dword [edi]
jmp 0x422ead
mov eax, edi
push 0xa
push str.i:6B
push ecx
push eax
call fcn.00439429
add esp, 0x10
mov dword [esi + 0x14], 0xa
cmp dword [esi + 0x18], ebp
jb 0x422ecc
mov edi, dword [edi]
mov byte [edi + 0xa], 0
lea esi, [esp + 0x158]
call fcn.004016b0
mov byte [esp + 0x1fc], 7
call fcn.00401770
mov byte [esp + 0x1f8], 8
cmp dword [eax + 0x18], ebp
jb 0x422efb
mov eax, dword [eax + 4]
jmp 0x422efe
add eax, 4
push eax
lea ecx, [esp + 0x70]
call fcn.00404230
push eax
push 0x100
lea edx, [esp + 0x1d4]
push edx
sub esp, 0x1c
mov esi, esp
mov byte [esp + 0x220], 9
mov dword [esi + 0x18], 0xf
lea edi, [esi + 4]
mov dword [esi + 0x14], ebx
mov byte [edi], 0
mov eax, dword [esi + 0x18]
mov dword [esp + 0x4c], esp
cmp eax, ebp
jb 0x422f42
mov ecx, dword [edi]
jmp 0x422f44
mov ecx, edi
cmp ecx, str.i5_H
ja 0x422f7d
cmp eax, ebp
jb 0x422f54
mov ecx, dword [edi]
jmp 0x422f56
mov ecx, edi
mov edx, dword [esi + 0x14]
add edx, ecx
cmp edx, str.i5_H
jbe 0x422f7d
cmp eax, ebp
jb 0x422f69
mov edi, dword [edi]
push 0xc
mov eax, str.i5_H
sub eax, edi
push eax
push esi
mov ecx, esi
call fcn.00402d80
jmp 0x422fbf
cmp eax, 0xc
jae 0x422f8f
mov ecx, dword [esi + 0x14]
push ecx
push 0xc
mov ecx, esi
call fcn.004034b0
mov ecx, dword [esi + 0x18]
cmp ecx, ebp
jb 0x422f9a
mov eax, dword [edi]
jmp 0x422f9c
mov eax, edi
push 0xc
push str.i5_H
push ecx
push eax
call fcn.00439429
add esp, 0x10
mov dword [esi + 0x14], 0xc
cmp dword [esi + 0x18], ebp
jb 0x422fbb
mov edi, dword [edi]
mov byte [edi + 0xc], 0
lea esi, [esp + 0xb0]
call fcn.004016b0
mov byte [esp + 0x204], 0xa
call fcn.00401770
mov bl, 0xb
mov byte [esp + 0x200], bl
cmp dword [eax + 0x18], ebp
jb 0x422feb
mov eax, dword [eax + 4]
jmp 0x422fee
add eax, 4
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.0040f570
mov esi, dword [esp + 0x34]
push eax
lea edi, [esp + 0x3c]
mov byte [esp + 0x200], 0xc
call fcn.0042daa0
add esp, 0xc
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x200], 0xd
call fcn.00402d80
cmp dword [esp + 0x48], ebp
jb 0x423041
mov eax, dword [esp + 0x34]
push eax
call fcn.004393c9
add esp, 4
lea ecx, [esp + 0x190]
mov edi, 0xf
xor esi, esi
push ecx
mov dword [esp + 0x4c], edi
mov dword [esp + 0x48], esi
mov byte [esp + 0x38], 0
mov byte [esp + 0x1f8], bl
call fcn.0040f660
cmp dword [esp + 0x1e0], ebp
jb 0x423082
mov edx, dword [esp + 0x1cc]
push edx
call fcn.004393c9
add esp, 4
mov dword [esp + 0x1dc], esi
lea esi, [esp + 0x84]
mov dword [esp + 0x1e0], edi
mov byte [esp + 0x1cc], 0
call fcn.00429e20
cmp dword [esp + 0x80], ebp
jb 0x4230ba
mov eax, dword [esp + 0x6c]
push eax
call fcn.004393c9
add esp, 4
xor esi, esi
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], esi
mov byte [esp + 0x6c], 0
cmp dword [esp + 0x64], ebp
jb 0x4230df
mov ecx, dword [esp + 0x50]
push ecx
call fcn.004393c9
add esp, 4
mov dword [esp + 0x60], esi
lea esi, [esp + 0x134]
mov dword [esp + 0x64], edi
mov byte [esp + 0x50], 0
mov byte [esp + 0x1f4], 6
call fcn.00429e20
mov ebx, dword [esp + 0x1c]
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebx + 0xc]
mov eax, 0xea0ea0eb
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
xor edi, edi
xor ebp, ebp
add eax, edx
je 0x423428
mov esi, ebx
push ebp
mov eax, esi
call fcn.0042a990
cmp dword [eax + 0x74], 0xffffffff
je 0x4233f2
call fcn.004175b0
test eax, eax
je 0x423149
call fcn.00419050
mov esi, dword [esp + 0x18]
lea edi, [esi + 0x2d8]
push ebp
mov eax, edi
lea ebx, [esi + 0x2c0]
call fcn.0042a990
mov eax, dword [eax + 0x74]
mov ecx, ebx
call fcn.0042a870
add eax, 0x1c
cmp dword [eax + 0x14], 0
je 0x4232a7
push ebp
mov eax, edi
call fcn.0042a990
mov eax, dword [eax + 0x74]
mov ecx, ebx
call fcn.0042a870
add eax, 0x1c
push eax
lea ecx, [esp + 0x194]
call fcn.00402ba0
mov byte [esp + 0x1f4], 0xe
mov eax, dword [esp + 0x1a4]
test eax, eax
je 0x4231d4
lea edi, [eax - 1]
lea eax, [esp + 0x190]
call fcn.00404d70
cmp byte [eax], 0x5c
je 0x4231d4
push 0x5c
mov eax, 1
lea edi, [esp + 0x194]
call fcn.00412590
mov edi, dword [esp + 0x18]
push ebp
lea eax, [edi + 0x2d8]
call fcn.0042a990
add eax, 0x3c
push 0
push eax
or eax, 0xffffffff
lea esi, [esp + 0x198]
call fcn.00405750
call fcn.004175b0
lea eax, [edi + 0x244]
mov esi, 0x10
mov dword [esp + 0x1f4], 0xe
cmp dword [eax + 0x18], esi
jb 0x42321e
mov eax, dword [eax + 4]
jmp 0x423221
add eax, 4
mov ecx, dword [esp + 0x194]
cmp dword [esp + 0x1a8], esi
jae 0x423238
lea ecx, [esp + 0x194]
push eax
push ecx
call fcn.0043a90f
add esp, 8
test eax, eax
je 0x4234c8
cmp dword [esp + 0x28], 0
je 0x423291
mov ecx, dword [esp + 0x1b0]
cmp dword [esp + 0x1c4], esi
jae 0x423268
lea ecx, [esp + 0x1b0]
mov eax, dword [esp + 0x194]
cmp dword [esp + 0x1a8], esi
jae 0x42327f
lea eax, [esp + 0x194]
push ecx
push eax
call fcn.0043a90f
add esp, 8
test eax, eax
je 0x4234c8
lea ecx, [esp + 0x190]
mov byte [esp + 0x1f4], 6
call fcn.00402bd0
mov esi, edi
push ebp
lea eax, [esi + 0x2d8]
call fcn.0042a990
mov eax, dword [eax + 0x74]
mov ecx, ebx
call fcn.0042a870
cmp dword [eax + 0x14], 0
je 0x4233f2
mov eax, dword [esp + 0x18]
push ebp
add eax, 0x2d8
call fcn.0042a990
mov eax, dword [eax + 0x74]
mov ecx, ebx
call fcn.0042a870
push eax
lea ecx, [esp + 0x194]
call fcn.00402ba0
mov byte [esp + 0x1f4], 0x11
mov eax, dword [esp + 0x1a4]
test eax, eax
je 0x423327
lea edi, [eax - 1]
lea eax, [esp + 0x190]
call fcn.00404d70
cmp byte [eax], 0x5c
je 0x423327
push 0x5c
mov eax, 1
lea edi, [esp + 0x194]
call fcn.00412590
push 0
call fcn.0043a6c4
mov edi, dword [esp + 0x1c]
add esp, 4
push ebp
lea eax, [edi + 0x2d8]
call fcn.0042a990
add eax, 0x3c
push 0
push eax
or eax, 0xffffffff
lea esi, [esp + 0x198]
call fcn.00405750
lea eax, [edi + 0x244]
mov esi, 0x10
cmp dword [eax + 0x18], esi
jb 0x42336b
mov eax, dword [eax + 4]
jmp 0x42336e
add eax, 4
mov ecx, dword [esp + 0x194]
cmp dword [esp + 0x1a8], esi
jae 0x423385
lea ecx, [esp + 0x194]
push eax
push ecx
call fcn.0043a90f
add esp, 8
test eax, eax
je 0x4234c8
cmp dword [esp + 0x28], 0
je 0x4233de
mov ecx, dword [esp + 0x1b0]
cmp dword [esp + 0x1c4], esi
jae 0x4233b5
lea ecx, [esp + 0x1b0]
mov eax, dword [esp + 0x194]
cmp dword [esp + 0x1a8], esi
jae 0x4233cc
lea eax, [esp + 0x194]
push ecx
push eax
call fcn.0043a90f
add esp, 8
test eax, eax
je 0x4234c8
lea ecx, [esp + 0x190]
mov byte [esp + 0x1f4], 6
call fcn.00402bd0
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x2e8]
sub ecx, dword [esi + 0x2e4]
add esi, 0x2d8
mov eax, 0xea0ea0eb
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
inc ebp
add ecx, edx
cmp ebp, ecx
jb 0x423129
mov ebx, esi
xor edi, edi
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebx + 0xc]
mov eax, 0xea0ea0eb
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
xor esi, esi
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x1c], esi
je 0x423969
mov ebp, dword [esp + 0x18]
push esi
mov eax, ebx
call fcn.0042a990
add eax, 0x58
cmp dword [eax + 0x14], edi
je 0x42374c
push esi
mov eax, ebx
call fcn.0042a990
sub esp, 0x1c
add eax, 0x58
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.00402ba0
push ebp
call fcn.0041c3d0
cmp eax, edi
jl 0x42374c
mov eax, dword [ebp + 0x17c]
cmp eax, edi
je 0x4234b7
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp eax, edi
je 0x423777
push 0x7d0
mov dword [ebp + 0x17c], edi
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp + 0x198], 0x10
jb 0x4234e7
mov eax, dword [ebp + 0x184]
jmp 0x4234ed
lea ecx, [esp + 0x190]
call fcn.00402bd0
lea ecx, [esp + 0x1ac]
call fcn.00402bd0
xor eax, eax
jmp 0x42397a
lea eax, [ebp + 0x184]
push eax
push edi
push 0x1f0001
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
mov dword [ebp + 0x17c], eax
cmp eax, edi
jne 0x42381e
push 0x40
xor eax, eax
lea ecx, [esp + 0x13c]
push edi
push ecx
mov dword [esp + 0x19c], edi
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x140], edi
call fcn.0043fbd0
xor edx, edx
add esp, 0xc
mov dword [esp + 0x160], 1
mov word [esp + 0x164], dx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, 2
je 0x42356a
sub eax, 2
je 0x42356a
sub eax, 4
jne 0x423571
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [esp + 0x1f4], 6
call fcn.004172f0
sub eax, 1
jne 0x423590
call fcn.00419120
call fcn.00419900
lea eax, [esp + 0x4c]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [esp + 0x40], esp
push 3
mov ecx, 0x4573a8
call fcn.00404200
lea esi, [esp + 0xa4]
call fcn.004016b0
mov byte [esp + 0x1f8], 0x18
call fcn.00401850
mov byte [esp + 0x1f4], 0x19
cmp dword [eax + 0x18], 0x10
jb 0x4235d6
mov edi, dword [eax + 4]
jmp 0x4235d9
lea edi, [eax + 4]
mov ecx, dword [esp + 0x1c]
push ecx
mov eax, ebx
call fcn.0042a990
add eax, 0x58
push eax
lea esi, [esp + 0x1cc]
call fcn.00405500
add esp, 4
lea ecx, [esp + 0x4c]
call fcn.00402bd0
lea esi, [esp + 0x84]
mov byte [esp + 0x1f4], 0x1c
call fcn.00429e20
cmp dword [esp + 0x1e0], 0x10
mov eax, dword [esp + 0x1cc]
jae 0x42362d
lea eax, [esp + 0x1cc]
lea edx, [esp + 0x190]
push edx
lea ecx, [esp + 0x138]
push ecx
push 0
push 0
push 0x8000000
push 0
push 0
push 0
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
mov edx, dword [esp + 0x190]
push 0x2710
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, eax
mov eax, dword [esp + 0x190]
cmp esi, 0x102
jne 0x423894
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call esi
mov ecx, dword [esp + 0x194]
push ecx
call esi
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, ebp
call fcn.0041d140
push 0
call fcn.0043a6c4
mov eax, dword [esp + 0x1d0]
mov edi, 0x10
add esp, 4
cmp dword [esp + 0x1e0], edi
jae 0x4236c8
lea eax, [esp + 0x1cc]
push eax
lea edx, [esp + 0x6c]
push edx
sub esp, 0x1c
mov esi, esp
mov dword [esp + 0x44], esp
push 0x22
mov ecx, str._DRTSN
call fcn.00404200
lea esi, [esp + 0x100]
call fcn.004016b0
mov byte [esp + 0x1fc], 0x1f
call fcn.00401ad0
mov byte [esp + 0x1f8], 0x20
cmp dword [eax + 0x18], edi
jb 0x42370e
mov eax, dword [eax + 4]
jmp 0x423711
add eax, 4
push eax
push 1
push ebp
call fcn.0041d220
add esp, 0x10
lea ecx, [esp + 0x68]
call fcn.00402bd0
lea esi, [esp + 0xdc]
call fcn.00429e20
lea ecx, [esp + 0x1c8]
mov byte [esp + 0x1f4], 6
call fcn.00402bd0
mov esi, dword [esp + 0x1c]
xor edi, edi
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebx + 0xc]
mov eax, 0xea0ea0eb
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
inc esi
add eax, edx
mov dword [esp + 0x1c], esi
cmp esi, eax
jb 0x423451
jmp 0x423969
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [esp + 0x50]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [esp + 0x44], esp
push 0x26
mov ecx, 0x457358
call fcn.00404200
lea esi, [esp + 0x100]
call fcn.004016b0
mov byte [esp + 0x1fc], 0x12
call fcn.00401ad0
mov byte [esp + 0x1f8], 0x13
cmp dword [eax + 0x18], 0x10
jb 0x4237c4
mov eax, dword [eax + 4]
jmp 0x4237c7
add eax, 4
push eax
push 1
push ebp
call fcn.0041d220
add esp, 0x10
lea ecx, [esp + 0x4c]
call fcn.00402bd0
lea esi, [esp + 0xdc]
mov byte [esp + 0x1f4], 6
call fcn.00429e20
lea eax, [esp + 0x17]
mov byte [esp + 0x17], 0
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x423800
sub eax, edx
je 0x423969
call fcn.00418970
call fcn.00419f30
jmp 0x423969
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea edx, [esp + 0x50]
push edx
sub esp, 0x1c
mov esi, esp
mov dword [esp + 0x44], esp
push 0x25
mov ecx, 0x457380
call fcn.00404200
lea esi, [esp + 0x100]
call fcn.004016b0
mov byte [esp + 0x1fc], 0x14
call fcn.00401770
mov byte [esp + 0x1f8], 0x15
cmp dword [eax + 0x18], 0x10
jb 0x42386b
mov eax, dword [eax + 4]
jmp 0x42386e
add eax, 4
push eax
push 1
push ebp
call fcn.0041d220
add esp, 0x10
lea ecx, [esp + 0x4c]
call fcn.00402bd0
lea esi, [esp + 0xdc]
call fcn.00429e20
jmp 0x423969
push 0
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
call fcn.00435460
mov ecx, eax
mov eax, 0x82082083
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 0x7e
jle 0x4238ce
push 0x7e
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00436210
call fcn.00435810
mov edx, dword [esp + 0x190]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push edx
call edi
mov eax, dword [esp + 0x194]
push eax
call edi
push 0
call fcn.0043a6c4
add esp, 4
push esi
lea ecx, [esp + 0x6c]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [esp + 0x44], esp
push 0x2f
mov ecx, 0x4573ac
call fcn.00404200
lea esi, [esp + 0x100]
call fcn.004016b0
mov byte [esp + 0x1fc], 0x1d
call fcn.00401770
mov byte [esp + 0x1f8], 0x1e
cmp dword [eax + 0x18], 0x10
jb 0x423939
mov eax, dword [eax + 4]
jmp 0x42393c
add eax, 4
push eax
push 1
push ebp
call fcn.0041d220
add esp, 0x10
lea ecx, [esp + 0x68]
call fcn.00402bd0
lea esi, [esp + 0xdc]
call fcn.00429e20
lea ecx, [esp + 0x1c8]
call fcn.00402bd0
lea ecx, [esp + 0x1ac]
call fcn.00402bd0
mov eax, 0x80004005
mov ecx, dword [esp + 0x1ec]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1d0]
xor ecx, esp
call fcn.00438dc1
add esp, 0x1e4
ret 4