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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x80
mov esi, esp
mov dword [esi + 8], ecx
lea eax, [ebp + 8]
mov dword [esi + 0xc], eax
mov eax, dword [0x43e080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0x271c1d2b
sub edx, 1
sub edx, 0x271c1d2b
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x16], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x17], al
mov dword [esi + 0x10], 0xbb34fba
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
sub eax, 0x9ca3ed2b
je 0x40af0d
jmp 0x40aaaa
mov eax, dword [esi + 4]
sub eax, 0xb09a7fd7
je 0x40afc7
jmp 0x40aabd
mov eax, dword [esi + 4]
sub eax, 0xb5240556
je 0x40b4f9
jmp 0x40aad0
mov eax, dword [esi + 4]
sub eax, 0xc1f9befe
je 0x40af72
jmp 0x40aae3
mov eax, dword [esi + 4]
sub eax, 0xca0aeb46
je 0x40b22e
jmp 0x40aaf6
mov eax, dword [esi + 4]
sub eax, 0xd6577447
je 0x40b02f
jmp 0x40ab09
mov eax, dword [esi + 4]
sub eax, 0xd77aabc0
je 0x40b023
jmp 0x40ab1c
mov eax, dword [esi + 4]
sub eax, 0xd8dbbc92
je 0x40b11d
jmp 0x40ab2f
mov eax, dword [esi + 4]
sub eax, 0xe0215410
je 0x40af86
jmp 0x40ab42
mov eax, dword [esi + 4]
sub eax, 0xe07b5cfc
je 0x40b158
jmp 0x40ab55
mov eax, dword [esi + 4]
sub eax, 0xe0af9155
je 0x40b0f6
jmp 0x40ab68
mov eax, dword [esi + 4]
sub eax, 0xe296c3cf
je 0x40b4d5
jmp 0x40ab7b
mov eax, dword [esi + 4]
sub eax, 0xe69e75c4
je 0x40b326
jmp 0x40ab8e
mov eax, dword [esi + 4]
sub eax, 0xec1b6a8b
je 0x40b13d
jmp 0x40aba1
mov eax, dword [esi + 4]
sub eax, 0xbb34fba
je 0x40ada7
jmp 0x40abb4
mov eax, dword [esi + 4]
sub eax, 0xcb69067
je 0x40affa
jmp 0x40abc7
mov eax, dword [esi + 4]
sub eax, 0xcda0c74
je 0x40b102
jmp 0x40abda
mov eax, dword [esi + 4]
sub eax, 0xe559adb
je 0x40afa0
jmp 0x40abed
mov eax, dword [esi + 4]
sub eax, 0xf105495
je 0x40b4a2
jmp 0x40ac00
mov eax, dword [esi + 4]
sub eax, 0x166d9c4f
je 0x40afbb
jmp 0x40ac13
mov eax, dword [esi + 4]
sub eax, 0x19d62cac
je 0x40b46e
jmp 0x40ac26
mov eax, dword [esi + 4]
sub eax, 0x1c04f154
je 0x40b075
jmp 0x40ac39
mov eax, dword [esi + 4]
sub eax, 0x22eaff04
je 0x40afdb
jmp 0x40ac4c
mov eax, dword [esi + 4]
sub eax, 0x2485d0a5
je 0x40b508
jmp 0x40ac5f
mov eax, dword [esi + 4]
sub eax, 0x275515e6
je 0x40b4e4
jmp 0x40ac72
mov eax, dword [esi + 4]
sub eax, 0x2f014dc0
je 0x40b453
jmp 0x40ac85
mov eax, dword [esi + 4]
sub eax, 0x305415a0
je 0x40b359
jmp 0x40ac98
mov eax, dword [esi + 4]
sub eax, 0x3212b88e
je 0x40adf2
jmp 0x40acab
mov eax, dword [esi + 4]
sub eax, 0x34e6245b
je 0x40b129
jmp 0x40acbe
mov eax, dword [esi + 4]
sub eax, 0x354f1ffb
je 0x40b222
jmp 0x40acd1
mov eax, dword [esi + 4]
sub eax, 0x36ff0443
je 0x40b1a6
jmp 0x40ace4
mov eax, dword [esi + 4]
sub eax, 0x38b3657a
je 0x40b34d
jmp 0x40acf7
mov eax, dword [esi + 4]
sub eax, 0x41b23467
je 0x40ae60
jmp 0x40ad0a
mov eax, dword [esi + 4]
sub eax, 0x5810fd75
je 0x40b2a5
jmp 0x40ad1d
mov eax, dword [esi + 4]
sub eax, 0x5b22cbee
je 0x40b23a
jmp 0x40ad30
mov eax, dword [esi + 4]
sub eax, 0x5b3fb38d
je 0x40b4c9
jmp 0x40ad43
mov eax, dword [esi + 4]
sub eax, 0x5dd77616
je 0x40ae54
jmp 0x40ad56
mov eax, dword [esi + 4]
sub eax, 0x6c3c514b
je 0x40b3cc
jmp 0x40ad69
mov eax, dword [esi + 4]
sub eax, 0x6edad6ad
je 0x40b447
jmp 0x40ad7c
mov eax, dword [esi + 4]
sub eax, 0x6fcadfd0
je 0x40b332
jmp 0x40ad8f
mov eax, dword [esi + 4]
sub eax, 0x756cfc21
je 0x40b00e
jmp 0x40ada2
jmp 0x40b512
mov bl, byte [esi + 0x16]
mov dh, byte [esi + 0x17]
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x5b3fb38d
mov ecx, 0x3212b88e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
push eax
mov eax, esp
mov dword [esi + 0x18], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x1c], eax
push eax
mov eax, esp
mov dword [esi + 0x20], eax
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
add edx, 0xb8c08c6b
sub edx, 1
sub edx, 0xb8c08c6b
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5b3fb38d
mov ecx, 0x5dd77616
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0x41b23467
jmp 0x40b512
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0xc]
push eax
sub esp, 0x14
mov edx, esp
mov dword [esi + 0x24], edx
push eax
mov edx, esp
mov dword [esi + 0x28], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x2c], edx
push eax
mov edx, esp
mov dword [esi + 0x30], edx
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov esp, edx
mov dword [esi + 0x34], edx
push eax
push eax
mov edx, esp
and edx, 0xfffffff8
mov esp, edx
mov dword [esi + 0x38], edx
push eax
push eax
mov edx, esp
and edx, 0xfffffff8
mov esp, edx
mov dword [esi + 0x3c], edx
push eax
mov edx, esp
mov dword [esi + 0x40], edx
push eax
mov edx, esp
mov dword [esi + 0x44], edx
push eax
mov edx, esp
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], eax
mov edx, eax
add edx, 0x18
mov dword [esi + 0x50], edx
add eax, 0x30
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x18]
mov dword [eax], ecx
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
lea eax, str.wnxejxluizqrkqbugscliotyyknlviguestd
sub esp, 4
mov dword [esp], eax
call fcn.0041d780
mov eax, dword [esi + 0x20]
mov byte [eax], 1
mov ecx, dword [esi + 0x24]
lea eax, str.ntcytxvxpxwmohchsadznikgpbkuebqfdaljzysmaqqbxmfhbhulmmntot
sub esp, 4
mov dword [esp], eax
call fcn.0041d780
mov dword [esi + 0x10], 0x9ca3ed2b
jmp 0x40b512
mov eax, dword [esi + 0x28]
mov dword [eax], 0xbc3
mov ecx, dword [esi + 0x2c]
lea eax, str.rujovwqgxftxsjsvjblhnkflzzfaehbszjbizysgh
sub esp, 4
mov dword [esp], eax
call fcn.0041d780
mov eax, dword [esi + 0x30]
mov byte [eax], 1
mov eax, dword [esi + 0x34]
vmovsd xmm0, qword [0x4362d8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x38]
vmovsd xmm0, qword [0x4362d0]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x3c]
vmovsd xmm0, qword [0x4362c8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x40]
mov dword [eax], 0x27
mov dword [esi + 0x10], 0xc1f9befe
jmp 0x40b512
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x58], eax
mov dword [esi + 0x10], 0xe0215410
jmp 0x40b512
mov eax, dword [esi + 0x58]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x5f], al
mov dword [esi + 0x10], 0xe559adb
jmp 0x40b512
mov dl, byte [esi + 0x5f]
mov eax, 0x756cfc21
mov ecx, 0x166d9c4f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0xb09a7fd7
jmp 0x40b512
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov dword [esi + 0x10], 0x22eaff04
jmp 0x40b512
mov eax, dword [esi + 0x60]
add eax, 0xfa9bb519
add eax, 0xffffffff
sub eax, 0xfa9bb519
mov dword [esi + 0x64], eax
mov dword [esi + 0x10], 0xcb69067
jmp 0x40b512
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x64]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xc1f9befe
jmp 0x40b512
mov eax, dword [esi + 0x44]
mov dword [eax], 0x3c
mov dword [esi + 0x10], 0xd77aabc0
jmp 0x40b512
mov dword [esi + 0x10], 0xd6577447
jmp 0x40b512
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe296c3cf
mov ecx, 0x1c04f154
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov eax, dword [esi + 0x44]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x6b], al
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0xb886064c
sub edx, 1
sub edx, 0xb886064c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xe296c3cf
mov ecx, 0xe0af9155
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0xcda0c74
jmp 0x40b512
mov dl, byte [esi + 0x6b]
mov eax, 0xe07b5cfc
mov ecx, 0xd8dbbc92
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0x34e6245b
jmp 0x40b512
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov dword [esi + 0x10], 0xec1b6a8b
jmp 0x40b512
mov ecx, dword [esi + 0x6c]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x44]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xd6577447
jmp 0x40b512
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
sub edx, 0xa6f887ab
sub edx, 1
add edx, 0xa6f887ab
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x275515e6
mov ecx, 0x36ff0443
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov eax, dword [esi + 0x48]
mov dword [eax], 0x1a
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0xeeed8231
sub edx, 1
add edx, 0xeeed8231
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x275515e6
mov ecx, 0x354f1ffb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0xca0aeb46
jmp 0x40b512
mov dword [esi + 0x10], 0x5b22cbee
jmp 0x40b512
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xb5240556
mov ecx, 0x5810fd75
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov eax, dword [esi + 0x48]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x73], al
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0x1a5bb1ea
sub edx, 1
sub edx, 0x1a5bb1ea
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xb5240556
mov ecx, 0xe69e75c4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0x6fcadfd0
jmp 0x40b512
mov dl, byte [esi + 0x73]
mov eax, 0x19d62cac
mov ecx, 0x38b3657a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0x305415a0
jmp 0x40b512
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0xf24bad5
sub edx, 1
sub edx, 0xf24bad5
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x2485d0a5
mov ecx, 0x6c3c514b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0x5bce97db
sub edx, 1
add edx, 0x5bce97db
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x2485d0a5
mov ecx, 0x6edad6ad
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40b512
mov dword [esi + 0x10], 0x2f014dc0
jmp 0x40b512
mov ecx, dword [esi + 0x74]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x48]
mov dword [eax], ecx
mov dword [esi + 0x10], 0x5b22cbee
jmp 0x40b512
mov ecx, dword [esi + 0x2c]
call fcn.0041d710
mov ecx, dword [esi + 0x24]
call fcn.0041d710
mov ecx, dword [esi + 0x1c]
call fcn.0041d710
mov ecx, dword [esi + 0x4c]
call fcn.0041d710
mov ecx, dword [esi + 0x50]
call fcn.0041d710
mov dword [esi + 0x10], 0xf105495
jmp 0x40b512
mov ecx, dword [esi + 0x54]
call fcn.0041d710
mov al, 1
and al, 1
movzx eax, al
mov dword [esi], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.004272e0
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x5c
mov dword [esi + 0x10], 0x3212b88e
jmp 0x40b512
mov eax, dword [esi + 0x44]
mov dword [esi + 0x10], 0x1c04f154
jmp 0x40b512
mov eax, dword [esi + 0x48]
mov dword [eax], 0x1a
mov dword [esi + 0x10], 0x36ff0443
jmp 0x40b512
mov eax, dword [esi + 0x48]
mov dword [esi + 0x10], 0x5810fd75
jmp 0x40b512
mov eax, dword [esi + 0x48]
mov dword [esi + 0x10], 0x6c3c514b
jmp 0x40aa94