Function at 0x420090
Capabilities:
Create thread

Disassembly:
push ecx
push ebx
push ebp
push esi
mov esi, dword [0x45dbd4]
mov eax, 0xa33a575b
imul esi
add edx, esi
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x4a4dc96f
imul esi
mov esi, dword [0x45dbcc]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
push edi
mov edi, eax
mov eax, 0x4a4dc96f
imul esi
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, dword [0x45dbe8]
mov edx, esi
imul ebp, ebp, 0x338
imul edx, edx, 0x365
mov ebx, eax
sub ebx, edi
mov edi, dword [0x45dbdc]
add ebx, edx
imul edi, edi, 0x221
mov eax, 0xc152500d
imul esi
add edx, esi
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [esp + 0x18]
add ebx, ecx
add edi, ebx
add edi, ebp
cmp eax, 0x132db2c
mov dword [esp + 0x10], ecx
mov dword [str._r_____r____], edi
je 0x420152
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, 0x64
lea esp, [esp]
push 0x3e8
call edi
dec esi
jne 0x420140
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
mov esi, dword [0x45dbd0]
mov ecx, dword [0x45dbc8]
mov edx, dword [0x45dbe0]
add ecx, edx
mov ebx, dword [0x45dbe4]
imul ecx, ecx, 0x92
mov eax, 0x96d4b1f
imul esi
sar edx, 5
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov ecx, eax
mov eax, 0xf07fc3e1
imul ebx
add edx, ebx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x57d990d1
imul esi
sar edx, 7
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov dword [esp + 0x18], eax
mov eax, 0xe070381d
imul esi
mov eax, dword [esp + 0x18]
add edx, esi
sar edx, 7
add eax, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, eax
mov eax, dword [0x571a0c]
mov edx, eax
inc eax
test edx, edx
mov dword [0x45dbc8], ecx
mov dword [0x571a0c], eax
jle 0x420249
mov esi, dword [0x45dbd4]
imul ebx, ebx, 0x92
mov ecx, dword [0x45dbe0]
mov eax, 0xf07fc3e1
imul ecx, ecx, 0x365
imul esi
add edx, esi
sar edx, 9
add ecx, edx
mov esi, edx
mov eax, 0x5e6ea9af
imul dword [0x45dbcc]
shr esi, 0x1f
sar edx, 7
add esi, ecx
mov ecx, dword [esp + 0x10]
mov eax, edx
shr eax, 0x1f
add esi, edx
add eax, esi
add eax, ebx
sub eax, ebp
sub eax, edi
pop edi
pop esi
lea edx, [eax + ecx + 0x2f4]
pop ebp
mov dword [0x45dbcc], edx
mov eax, 1
pop ebx
pop ecx
ret
mov edi, dword [0x45dbd8]
imul ecx, ecx, 0x221
mov eax, 0x4a4dc96f
imul edi, edi, 0x372
imul dword [0x45dbdc]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0xad602b59
imul esi
add edx, esi
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
add edi, ecx
mov ecx, dword [0x45dbd8]
mov eax, 0xe070381d
imul ecx
add edx, ecx
sar edx, 7
lea eax, [esp + 0x18]
push eax
push 0
mov ecx, edx
shr ecx, 0x1f
add edi, edx
push 0
add ecx, edi
push 0x41f9d0
sub ecx, ebx
push 0
lea edx, [ecx + ebp - 0x92]
push 0
mov dword [0x57172c], 0
mov dword [0x45dbd0], edx
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [0x45dbdc]
mov ecx, dword [str._r_____r____]
mov edx, dword [0x45dbd8]
lea edi, [edx + ecx]
imul ecx, ecx, 0x323
imul edi, edi, 0x221
mov eax, esi
imul eax, eax, 0x365
add edi, eax
mov eax, 0xa33a575b
imul esi
add edx, esi
sar edx, 9
add edi, edx
mov ebx, edx
mov eax, 0x5e6ea9af
imul esi
shr ebx, 0x1f
add ebx, edi
add ebx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45dbe0]
pop edi
sub ebx, ecx
lea eax, [ebx + edx - 0x92]
pop esi
pop ebp
mov dword [0x45dbd4], eax
mov eax, 1
pop ebx
pop ecx
ret