Function at 0x412220
Capabilities:
Create thread

Disassembly:
mov ecx, dword [0x454e04]
mov eax, 0x20a2ed5d
imul ecx
mov ecx, dword [0x454e14]
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0xdecb
sub esp, 8
push esi
mov esi, dword [0x454e00]
push edi
mov edi, eax
sub edi, edx
mov eax, 0x68649efd
imul esi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x68649efd
imul ecx
mov eax, dword [esp + 0x14]
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add edi, edx
cmp eax, 0x132b600
lea edx, [ecx + edi + 0x8bf0]
mov dword [0x454e04], edx
je 0x4122b2
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, 0x64
jmp 0x4122a0
push 0x3e8
call edi
dec esi
jne 0x4122a0
pop edi
xor eax, eax
pop esi
add esp, 8
ret
mov ecx, dword [0x454dfc]
imul esi, esi, 0xdecc
imul ecx, ecx, 0x689f
add ecx, esi
mov esi, dword [0x454df8]
mov eax, esi
imul eax, eax, 0x15208
sub ecx, eax
mov eax, 0x3d4263a3
imul esi
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454df4]
sub ecx, eax
imul edx, edx, 0x8bf0
mov dword [0x454e08], ecx
imul ecx, ecx, 0x139e4
add ecx, edx
mov edx, dword [0x454e10]
mov eax, 0x7fbc240d
imul edx
mov edi, dword [sym.imp.KERNEL32.dll_CreateThread]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
push ebx
sub ecx, esi
push ebp
add ecx, 0xd145
mov dword [0x454e10], ecx
lea ecx, [esp + 0x10]
push ecx
push 0
push 0
push 0x407c30
push 0
push 0
call edi
mov ecx, dword [0x454df4]
mov esi, eax
mov ebx, dword [0x454e0c]
mov eax, 0x93140835
imul ebx, ebx, 0x689f
imul ecx
add edx, ecx
mov ecx, dword [0x454e08]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0x30780947
imul ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebp, ebx
sub ebp, ecx
mov ecx, dword [0x454e10]
mov eax, 0x3d4263a3
imul ecx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r_____n]
sub ebp, eax
add ebp, edx
push esi
mov dword [0x454df4], ebp
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x454dfc]
mov eax, 0xa2ad5745
imul ecx
add edx, ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov ebx, dword [0x454e08]
mov esi, ecx
mov ecx, dword [0x454e0c]
mov eax, 0xc2bd9c5d
imul ecx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0x7fbc240d
imul ebx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebp, esi
sub ebp, ecx
mov ecx, dword [0x454e14]
mov eax, 0x7fbc240d
imul ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add ebp, edx
lea ebp, [eax + ebp - 0xdecb]
mov eax, dword [0x567488]
mov edx, eax
inc eax
test edx, edx
mov dword [0x454dfc], ebp
mov dword [0x567488], eax
jle 0x412683
mov esi, dword [0x454df8]
mov edi, dword [0x454e10]
imul edi, edi, 0xdecb
mov eax, esi
imul eax, eax, 0xcd41
add edi, eax
mov eax, 0x7514b1e9
imul ebx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454e04]
sub edi, eax
mov eax, edx
imul eax, eax, 0x85ba
lea eax, [edi + eax + 0x139e4]
mov edi, 0x567508
mov dword [0x454e00], eax
lea eax, [edi + 1]
mov dword [esp + 0x1c], eax
mov al, byte [edi]
inc edi
test al, al
jne 0x412495
sub edi, dword [esp + 0x1c]
cmp edi, 5
jbe 0x412640
mov eax, 0x20a2ed5d
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0xdecb
mov esi, eax
sub esi, edx
mov eax, 0x68649efd
imul dword [0x454e00]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x68649efd
imul ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add esi, edx
lea edx, [ecx + esi + 0x8bf0]
push 0x567508
mov dword [0x454e04], edx
mov dword [0x56860c], 0
call fcn.0041d450
mov esi, dword [0x454dfc]
mov edx, dword [0x454df8]
imul esi, esi, 0x689f
mov ecx, eax
mov eax, dword [0x454e00]
imul eax, eax, 0xdecc
add esi, eax
mov eax, edx
imul eax, eax, 0x15208
sub esi, eax
mov eax, 0x3d4263a3
imul edx
push 0
sar edx, 0xd
push 0
mov eax, edx
shr eax, 0x1f
push 0
add eax, edx
push 0
sub esi, eax
mov eax, dword [0x567430]
push ecx
mov dword [0x454e08], esi
mov edx, dword [eax]
push eax
call dword [edx + 0x2c]
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, dword [0x454df8]
mov ecx, dword [str._r_____r_____n]
mov eax, 0xa2ad5745
imul ecx, ecx, 0x64b7
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454e04]
sub ecx, eax
imul edx, edx, 0x5706
lea eax, [ecx + edx - 0xdecb]
mov dword [0x454e0c], eax
mov eax, 0x567508
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4125c0
sub eax, ecx
cmp eax, 0x100
jae 0x4125e3
xor eax, eax
mov cl, byte [eax + 0x567508]
mov byte [eax + 0x567d08], cl
inc eax
test cl, cl
jne 0x4125d2
mov ebx, dword [0x454e08]
mov ecx, dword [0x454df4]
imul ecx, ecx, 0x8bf0
mov edi, ebx
imul edi, edi, 0x139e4
add edi, ecx
mov ecx, dword [0x454e10]
mov ebp, dword [0x454dfc]
mov eax, 0x7fbc240d
imul ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
sub edi, esi
add edi, 0xd145
mov dword [0x454e10], edi
mov ecx, 0x200
xor eax, eax
mov edi, 0x567508
rep stosd dword es:[edi], eax
mov ecx, dword [0x454e14]
mov eax, 0x9c9a6c87
imul ecx, ecx, 0xfb02
imul esi, esi, 0xcd41
imul ebx
add edx, ebx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
add ecx, esi
imul ebp, ebp, 0x10088
lea ecx, [ecx + ebp + 0x139e4]
pop ebp
pop ebx
pop edi
mov dword [str._r_____r_____n], ecx
mov eax, 1
pop esi
add esp, 8
ret
mov edx, dword [0x454e04]
mov eax, 0x20a2ed5d
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0xdecb
mov esi, eax
sub esi, edx
mov edx, dword [0x454e00]
mov eax, 0x68649efd
imul edx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x68649efd
imul ecx
lea eax, [esp + 0x14]
push eax
push 0
sar edx, 0xf
push 0
mov ecx, edx
push 0x411b20
shr ecx, 0x1f
add esi, edx
push 0
lea edx, [ecx + esi + 0x8bf0]
push 0
mov dword [0x454e04], edx
call edi
pop ebp
pop ebx
pop edi
mov dword [0x454ca0], eax
mov eax, 1
pop esi
add esp, 8
ret