Function at 0x4366c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
push esi
sub esp, 0x94
mov al, byte [esp + 0x6c]
mov byte [esp + 0x74], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4d
mov byte [esp + 0x8c], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4e
mov byte [esp + 0x8d], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4f
mov byte [esp + 0x8e], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
mov ecx, eax
xor ecx, 0x40
and eax, 0x40
shl eax, 1
add ecx, eax
xor ecx, 0x50
mov byte [esp + 0x8f], cl
mov eax, 4
mov byte [esp + eax + 0x8c], 0
add eax, 1
cmp eax, 8
jne 0x436759
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 8
jae 0x4367ac
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043b290
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x8c], al
mov eax, dword [esp + 8]
inc eax
mov dword [esp + 8], eax
jmp 0x436771
mov al, byte [esp + 0x60]
mov byte [esp + 0x70], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4d
mov byte [esp + 0x64], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4e
mov byte [esp + 0x65], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
xor eax, 0x4f
mov byte [esp + 0x66], al
mov dword [esp], 0x8094204d
mov dword [esp + 4], 5
call fcn.004196a0
mov ecx, eax
xor ecx, 0x40
and eax, 0x40
shl eax, 1
add ecx, eax
xor ecx, 0x50
mov byte [esp + 0x67], cl
mov eax, 4
mov byte [esp + eax + 0x64], 0
add eax, 1
cmp eax, 8
jne 0x436831
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 8
jae 0x43687b
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x64]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043b290
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x64], al
mov eax, dword [esp + 0xc]
inc eax
mov dword [esp + 0xc], eax
jmp 0x436846
mov eax, dword [esp + 0x64]
xor ecx, ecx
cpuid
mov esi, ecx
mov al, byte [esp + 0x54]
mov byte [esp + 0x78], al
mov dword [esp], 0x87fccb51
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x56
xor eax, 0x51
mov byte [esp + 0x58], al
mov dword [esp], 0x87fccb51
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x4d
xor eax, 0x52
mov byte [esp + 0x59], al
mov dword [esp], 0x87fccb51
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x4b
xor eax, 0x53
mov byte [esp + 0x5a], al
mov dword [esp], 0x87fccb51
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x56
xor eax, 0x54
mov byte [esp + 0x5b], al
mov eax, 4
mov byte [esp + eax + 0x58], 0
add eax, 1
cmp eax, 6
jne 0x43690a
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x10]
cmp eax, 6
jae 0x436954
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
movzx ecx, byte [esp + ecx + 0x58]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043b2b0
mov ecx, dword [esp + 0x10]
mov byte [esp + ecx + 0x58], al
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
jmp 0x43691f
mov eax, dword [esp + 0x58]
cmp esi, eax
je 0x436cf9
mov al, byte [esp + 0x48]
mov byte [esp + 0x7c], al
mov dword [esp], 0x770a6be8
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x43
xor eax, 0xe8
mov byte [esp + 0x4c], al
mov dword [esp], 0x770a6be8
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x47
xor eax, 0xe9
mov byte [esp + 0x4d], al
mov dword [esp], 0x770a6be8
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x54
xor eax, 0xea
mov byte [esp + 0x4e], al
mov dword [esp], 0x770a6be8
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x43
xor eax, 0xeb
mov byte [esp + 0x4f], al
mov eax, 4
mov byte [esp + eax + 0x4c], 0
add eax, 1
cmp eax, 8
jne 0x4369ed
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x14]
cmp eax, 8
jae 0x436a37
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
movzx ecx, byte [esp + ecx + 0x4c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043b2f0
mov ecx, dword [esp + 0x14]
mov byte [esp + ecx + 0x4c], al
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
jmp 0x436a02
mov eax, dword [esp + 0x4c]
cmp esi, eax
sete al
test al, 1
jne 0x436cf9
jmp 0x436a4a
mov al, byte [esp + 0x3c]
mov byte [esp + 0x80], al
mov dword [esp], 0xee6b7dc6
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x72
xor eax, 0xc6
mov byte [esp + 0x40], al
mov dword [esp], 0xee6b7dc6
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x65
xor eax, 0xc7
mov byte [esp + 0x41], al
mov dword [esp], 0xee6b7dc6
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x56
xor eax, 0xc8
mov byte [esp + 0x42], al
mov dword [esp], 0xee6b7dc6
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x4d
xor eax, 0xc9
mov byte [esp + 0x43], al
mov eax, 4
mov byte [esp + eax + 0x40], 0
add eax, 1
cmp eax, 6
jne 0x436ada
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
cmp eax, 6
jae 0x436b24
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
movzx ecx, byte [esp + ecx + 0x40]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0041ba20
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x40], al
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
jmp 0x436aef
cmp esi, dword [esp + 0x40]
je 0x436cf9
mov al, byte [esp + 0x30]
mov byte [esp + 0x84], al
mov dword [esp], 0x30daaa1
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x56
xor eax, 0xa1
mov byte [esp + 0x34], al
mov dword [esp], 0x30daaa1
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x42
xor eax, 0xa2
mov byte [esp + 0x35], al
mov dword [esp], 0x30daaa1
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x6f
xor eax, 0xa3
mov byte [esp + 0x36], al
mov dword [esp], 0x30daaa1
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x78
xor eax, 0xa4
mov byte [esp + 0x37], al
mov eax, 4
mov byte [esp + eax + 0x34], 0
add eax, 1
cmp eax, 5
jne 0x436bbe
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x1c]
cmp eax, 5
jae 0x436c08
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
movzx ecx, byte [esp + ecx + 0x34]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0041ba40
mov ecx, dword [esp + 0x1c]
mov byte [esp + ecx + 0x34], al
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
jmp 0x436bd3
cmp esi, dword [esp + 0x34]
je 0x436cf9
mov al, byte [esp + 0x24]
mov byte [esp + 0x88], al
mov dword [esp], 0xeae79d84
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x4d
xor eax, 0x84
mov byte [esp + 0x28], al
mov dword [esp], 0xeae79d84
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x4d
xor eax, 0x85
mov byte [esp + 0x29], al
mov dword [esp], 0xeae79d84
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x58
xor eax, 0x86
mov byte [esp + 0x2a], al
mov dword [esp], 0xeae79d84
mov dword [esp + 4], 5
call fcn.004196a0
add eax, 0x65
xor eax, 0x87
mov byte [esp + 0x2b], al
mov eax, 4
mov byte [esp + eax + 0x28], 0
add eax, 1
cmp eax, 7
jne 0x436ca2
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x20]
cmp eax, 7
jae 0x436cec
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
movzx ecx, byte [esp + ecx + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043b310
mov ecx, dword [esp + 0x20]
mov byte [esp + ecx + 0x28], al
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x436cb7
cmp esi, dword [esp + 0x28]
sete al
test al, 1
jne 0x436cf9
jmp 0x436cfd
mov al, 1
jmp 0x436d01
xor eax, eax
jmp 0x436d01
and al, 1
movzx eax, al
add esp, 0x94
pop esi
pop ebx
ret