Function at 0x432a50
Capabilities:
Generate random numbers using a mersenne twister

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46751b
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1e60
call fcn.00448db0
mov eax, dword [0x4760c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c5c], ecx
mov dword [ebp - 0x1db8], 0
call fcn.0044842f
mov dword [ebp - 0x1d30], eax
mov dword [ebp - 0x8d0], 0xffffffff
push 0x6c078965
mov eax, dword [ebp - 0x1d30]
push eax
lea ecx, [ebp - 0x1c54]
call fcn.00430910
lea ecx, [ebp - 0x1c64]
mov dword [ebp - 0x1c7c], ecx
mov edx, dword [ebp - 0x1c7c]
mov dword [edx], 5
mov eax, dword [ebp - 0x1c7c]
mov dword [eax + 4], 0x14
mov ecx, dword [ebp - 0x1dbc]
mov dword [ebp - 0x1c78], ecx
mov dword [ebp - 4], 0
cmp dword [0x477048], 0
jne 0x432b1f
push 1
call fcn.004489d9
add esp, 4
mov dword [ebp - 0x1d34], eax
mov edx, dword [ebp - 0x1d34]
mov dword [0x477048], edx
mov eax, dword [0x477048]
mov dword [ebp - 0x1c78], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
push ecx
mov ecx, dword [ebp - 0x1c78]
call fcn.00433c70
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x1da4]
mov dword [ebp - 0x1c74], edx
mov byte [ebp - 4], 2
cmp dword [0x477048], 0
jne 0x432b7b
push 1
call fcn.004489d9
add esp, 4
mov dword [ebp - 0x1d38], eax
mov eax, dword [ebp - 0x1d38]
mov dword [0x477048], eax
mov ecx, dword [0x477048]
mov dword [ebp - 0x1c74], ecx
mov byte [ebp - 4], 1
lea edx, [ebp - 0x5c]
push edx
mov ecx, dword [ebp - 0x1c74]
call fcn.00433ff0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1da8]
mov dword [ebp - 0x1c70], eax
mov byte [ebp - 4], 4
cmp dword [0x477048], 0
jne 0x432bd3
push 1
call fcn.004489d9
add esp, 4
mov dword [ebp - 0x1cdc], eax
mov ecx, dword [ebp - 0x1cdc]
mov dword [0x477048], ecx
mov edx, dword [0x477048]
mov dword [ebp - 0x1c70], edx
mov byte [ebp - 4], 3
lea eax, [ebp - 0x74]
push eax
mov ecx, dword [ebp - 0x1c70]
call fcn.00433730
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x1dac]
mov dword [ebp - 0x1c6c], ecx
mov byte [ebp - 4], 6
cmp dword [0x477048], 0
jne 0x432c2b
push 1
call fcn.004489d9
add esp, 4
mov dword [ebp - 0x1d3c], eax
mov edx, dword [ebp - 0x1d3c]
mov dword [0x477048], edx
mov eax, dword [0x477048]
mov dword [ebp - 0x1c6c], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, dword [ebp - 0x1c6c]
call fcn.00434a20
mov byte [ebp - 4], 7
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c5c]
mov dword [ebp - 0x1d6c], edx
lea ecx, [ebp - 0x5c]
call fcn.0042a100
mov dword [ebp - 0x1d40], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1d44], eax
mov ecx, dword [ebp - 0x1d40]
mov dword [ebp - 0x1d90], ecx
mov edx, dword [ebp - 0x1d44]
mov dword [ebp - 0x1d8c], edx
lea eax, [ebp - 0x1d90]
mov dword [ebp - 0x1d48], eax
mov ecx, dword [ebp - 0x1d48]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
lea ecx, [ebp - 0x1c4]
push ecx
call fcn.004011a0
add esp, 0xc
mov dword [ebp - 0x1d4c], eax
mov edx, dword [ebp - 0x1d4c]
mov dword [ebp - 0x1d50], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1d50]
push eax
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x684]
call fcn.00436c80
mov dword [ebp - 0x1d54], eax
mov edx, dword [ebp - 0x1d54]
mov dword [ebp - 0x1d5c], edx
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x1d5c]
mov dword [ebp - 0x1d60], eax
lea ecx, [ebp - 0x1dc]
push ecx
mov ecx, dword [ebp - 0x1d60]
call fcn.00436d10
mov dword [ebp - 0x1d64], eax
mov edx, dword [ebp - 0x1d64]
mov dword [ebp - 0x1d68], edx
mov byte [ebp - 4], 0xb
push 1
push 0
mov eax, dword [ebp + 8]
push eax
push 0
mov ecx, dword [ebp - 0x1d68]
push ecx
lea edx, [ebp - 0xd4]
push edx
mov ecx, dword [ebp - 0x1d6c]
call fcn.00403550
mov dword [ebp - 0x1db0], eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1dc]
call fcn.00403130
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x454]
call fcn.00403130
lea ecx, [ebp - 0x46c]
call fcn.00403130
lea ecx, [ebp - 0x484]
call fcn.00403130
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1c4]
call fcn.00403130
mov eax, dword [ebp - 0x1c5c]
add eax, 1
mov dword [ebp - 0x1cbc], eax
lea ecx, [ebp - 0xd4]
call fcn.0042a100
mov dword [ebp - 0x1d70], eax
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x1d74], ecx
mov edx, dword [ebp - 0x1d70]
mov dword [ebp - 0x1d98], edx
mov eax, dword [ebp - 0x1d74]
mov dword [ebp - 0x1d94], eax
lea ecx, [ebp - 0x1d98]
mov dword [ebp - 0x1d78], ecx
mov edx, dword [ebp - 0x1d78]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
lea edx, [ebp - 0x164]
push edx
call fcn.004011a0
add esp, 0xc
mov dword [ebp - 0x1d7c], eax
mov eax, dword [ebp - 0x1d7c]
mov dword [ebp - 0x1d80], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x1d80]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [ebp - 0x8cc]
call fcn.00436c80
mov dword [ebp - 0x1d84], eax
mov eax, dword [ebp - 0x1d84]
mov dword [ebp - 0x1d88], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x1d88]
mov dword [ebp - 0x1c84], ecx
lea edx, [ebp - 0x17c]
push edx
mov ecx, dword [ebp - 0x1c84]
call fcn.00436d10
mov dword [ebp - 0x1c88], eax
mov eax, dword [ebp - 0x1c88]
mov dword [ebp - 0x1c8c], eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x1c8c]
push ecx
lea edx, [ebp - 0x194]
push edx
call fcn.00437380
add esp, 8
mov dword [ebp - 0x1c90], eax
mov eax, dword [ebp - 0x1c90]
mov dword [ebp - 0x1c94], eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x1c94]
mov dword [ebp - 0x1cb4], ecx
lea ecx, [ebp - 0x74]
call fcn.0042a100
mov dword [ebp - 0x1c98], eax
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x1c9c], edx
mov eax, dword [ebp - 0x1c98]
mov dword [ebp - 0x1da0], eax
mov ecx, dword [ebp - 0x1c9c]
mov dword [ebp - 0x1d9c], ecx
lea edx, [ebp - 0x1da0]
mov dword [ebp - 0x1ca0], edx
mov eax, dword [ebp - 0x1ca0]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x1ac]
push eax
call fcn.004011a0
add esp, 0xc
mov dword [ebp - 0x1ca4], eax
mov ecx, dword [ebp - 0x1ca4]
mov dword [ebp - 0x1ca8], ecx
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x1ca8]
push edx
lea eax, [ebp - 0x1f4]
push eax
call fcn.00437380
add esp, 8
mov dword [ebp - 0x1cac], eax
mov ecx, dword [ebp - 0x1cac]
mov dword [ebp - 0x1cb0], ecx
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x1cb0]
mov dword [ebp - 0x1cb8], edx
push 0
mov eax, dword [ebp - 0x1cb4]
push eax
mov ecx, dword [ebp - 0x1cb8]
push ecx
mov ecx, dword [ebp - 0x1cbc]
call fcn.00444200
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1f4]
call fcn.0042bd30
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1ac]
call fcn.00403130
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x194]
call fcn.0042bd30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x17c]
call fcn.00403130
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x69c]
call fcn.00403130
lea ecx, [ebp - 0x6b4]
call fcn.00403130
lea ecx, [ebp - 0x6cc]
call fcn.00403130
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x164]
call fcn.00403130
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xbc]
call fcn.00403130
lea ecx, [ebp - 0xd4]
call fcn.00403130
jmp 0x433090
mov dword [ebp - 4], 7
jmp 0x4330a2
jmp 0x4330ab
mov edx, dword [ebp - 0x1c60]
push edx
mov eax, dword [ebp - 0x1c64]
push eax
lea ecx, [ebp - 0x1c54]
push ecx
lea ecx, [ebp - 0x1c64]
call fcn.00416870
imul edx, eax, 0x3e8
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
push 1
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x1e70]
call fcn.0041c5d0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1cd8], ecx
mov ecx, dword [ebp - 0x1cd8]
call fcn.0041c1c0
lea ecx, [ebp - 0x2c]
call fcn.00402f50
mov byte [ebp - 4], 0x19
push 0x3b
lea edx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x1e70]
push eax
call fcn.0041b000
add esp, 0xc
mov dword [ebp - 0x1c68], eax
mov ecx, dword [ebp - 0x1c68]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x1c68]
add eax, dword [edx + 4]
mov dword [ebp - 0x1d58], eax
mov ecx, dword [ebp - 0x1d58]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x1ce0], edx
mov eax, dword [ebp - 0x1ce0]
and eax, 6
je 0x433167
mov byte [ebp - 0x1c55], 1
jmp 0x43316e
mov byte [ebp - 0x1c55], 0
mov cl, byte [ebp - 0x1c55]
mov byte [ebp - 0x1c57], cl
movzx edx, byte [ebp - 0x1c57]
test edx, edx
jne 0x433191
mov dword [ebp - 0x1c80], 1
jmp 0x43319b
mov dword [ebp - 0x1c80], 0
mov al, byte [ebp - 0x1c80]
mov byte [ebp - 0x1c56], al
movzx ecx, byte [ebp - 0x1c56]
test ecx, ecx
je 0x433480
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x1c5c]
mov dword [ebp - 0x1d00], edx
lea eax, [ebp - 0x1dc8]
push eax
lea ecx, [ebp - 0x2c]
call fcn.004335d0
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x134]
push eax
call fcn.004011a0
add esp, 0xc
mov dword [ebp - 0x1ce4], eax
mov ecx, dword [ebp - 0x1ce4]
mov dword [ebp - 0x1ce8], ecx
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x1ce8]
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x43c]
call fcn.00436c80
mov dword [ebp - 0x1cec], eax
mov ecx, dword [ebp - 0x1cec]
mov dword [ebp - 0x1cf0], ecx
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x1cf0]
mov dword [ebp - 0x1cf4], edx
lea eax, [ebp - 0x14c]
push eax
mov ecx, dword [ebp - 0x1cf4]
call fcn.00436d10
mov dword [ebp - 0x1cf8], eax
mov ecx, dword [ebp - 0x1cf8]
mov dword [ebp - 0x1cfc], ecx
mov byte [ebp - 4], 0x1d
push 1
push 1
mov edx, dword [ebp + 8]
push edx
push 1
mov eax, dword [ebp - 0x1cfc]
push eax
lea ecx, [ebp - 0x104]
push ecx
mov ecx, dword [ebp - 0x1d00]
call fcn.00403550
mov dword [ebp - 0x1db4], eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x14c]
call fcn.00403130
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x20c]
call fcn.00403130
lea ecx, [ebp - 0x224]
call fcn.00403130
lea ecx, [ebp - 0x23c]
call fcn.00403130
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x134]
call fcn.00403130
mov edx, dword [ebp - 0x1c5c]
add edx, 1
mov dword [ebp - 0x1d04], edx
lea eax, [ebp - 0xec]
push eax
mov ecx, dword [ebp - 0x1d04]
call fcn.00444d60
mov ecx, dword [ebp - 0x1c5c]
add ecx, 1
mov dword [ebp - 0x1d10], ecx
push 0x468d40
lea ecx, [ebp - 0xa4]
call fcn.0041d1c0
mov dword [ebp - 0x1dc0], eax
mov byte [ebp - 4], 0x22
lea edx, [ebp - 0xec]
push edx
lea eax, [ebp - 0x11c]
push eax
call fcn.00437380
add esp, 8
mov dword [ebp - 0x1d08], eax
mov ecx, dword [ebp - 0x1d08]
mov dword [ebp - 0x1d0c], ecx
mov byte [ebp - 4], 0x23
push 0
lea edx, [ebp - 0xa4]
push edx
mov eax, dword [ebp - 0x1d0c]
push eax
mov ecx, dword [ebp - 0x1d10]
call fcn.00444200
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x11c]
call fcn.0042bd30
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xa4]
call fcn.0042bd30
mov ecx, dword [ebp - 0x1c60]
push ecx
mov edx, dword [ebp - 0x1c64]
push edx
lea eax, [ebp - 0x1c54]
push eax
lea ecx, [ebp - 0x1c64]
call fcn.00416870
mov dword [ebp - 0x1d14], eax
imul ecx, dword [ebp - 0x1d14], 0x3e8
push ecx
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xec]
call fcn.00403130
lea ecx, [ebp - 0x104]
call fcn.00403130
jmp 0x433460
mov dword [ebp - 4], 0x19
jmp 0x433472
jmp 0x43347b
jmp 0x433112
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x2c]
call fcn.00403130
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1e10]
call fcn.0041ea70
lea ecx, [ebp - 0x1e10]
call fcn.0041e910
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x8c]
call fcn.00403130
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x74]
call fcn.00403130
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00403130
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.00403130
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00448a1c
mov esp, ebp
pop ebp
ret 4