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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov dword [esi + 4], ecx
vmovsd xmm0, qword [ebp + 0x28]
vmovsd qword [esi + 8], xmm0
mov eax, dword [ebp + 0x24]
mov dword [esi + 0x14], eax
mov eax, dword [ebp + 0x20]
mov dword [esi + 0x18], eax
mov al, byte [ebp + 0x1c]
mov byte [esi + 0x1f], al
vmovsd xmm0, qword [ebp + 0x14]
vmovsd qword [esi + 0x20], xmm0
mov al, byte [ebp + 0x10]
mov byte [esi + 0x2f], al
vmovsd xmm0, qword [ebp + 8]
vmovsd qword [esi + 0x30], xmm0
mov eax, dword [0x43c080]
xor eax, ebp
mov dword [esi + 0x90], eax
mov dword [esi + 0x38], 0x90ca9c9e
mov eax, dword [esi + 0x38]
mov dword [esi], eax
sub eax, 0x82edc1ea
je 0x409462
jmp 0x4090a3
mov eax, dword [esi]
sub eax, 0x8f844ba4
je 0x409360
jmp 0x4090b5
mov eax, dword [esi]
sub eax, 0x90ca9c9e
je 0x4091c8
jmp 0x4090c7
mov eax, dword [esi]
sub eax, 0xabe65177
je 0x40926a
jmp 0x4090d9
mov eax, dword [esi]
sub eax, 0xadcab490
je 0x40951b
jmp 0x4090eb
mov eax, dword [esi]
sub eax, 0xb7c955f8
je 0x409322
jmp 0x4090fd
mov eax, dword [esi]
sub eax, 0xc18a77c8
je 0x409342
jmp 0x40910f
mov eax, dword [esi]
sub eax, 0xc1b0a225
je 0x40953b
jmp 0x409121
mov eax, dword [esi]
sub eax, 0xc2c72c7a
je 0x409527
jmp 0x409133
mov eax, dword [esi]
sub eax, 0xebcdaad9
je 0x409421
jmp 0x409145
mov eax, dword [esi]
sub eax, 0xf203c114
je 0x409552
jmp 0x409157
mov eax, dword [esi]
sub eax, 0xf93f3cea
je 0x4094a8
jmp 0x409169
mov eax, dword [esi]
sub eax, 0x3250ba9b
je 0x40942d
jmp 0x40917b
mov eax, dword [esi]
sub eax, 0x3503d704
je 0x40944b
jmp 0x40918d
mov eax, dword [esi]
sub eax, 0x3df22161
je 0x40930b
jmp 0x40919f
mov eax, dword [esi]
sub eax, 0x69823aa1
je 0x4093d3
jmp 0x4091b1
mov eax, dword [esi]
sub eax, 0x6d7bc884
je 0x40955e
jmp 0x4091c3
jmp 0x409565
mov al, byte [esi + 0x1f]
mov edx, dword [esi + 0x18]
mov edi, dword [esi + 0x14]
vmovsd xmm0, qword [esi + 8]
push eax
mov ecx, esp
push eax
mov ebx, esp
mov dword [esi + 0x48], ebx
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
mov dword [esi + 0x4c], ebx
push eax
mov ebx, esp
mov dword [esi + 0x50], ebx
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
mov dword [esi + 0x54], ebx
push eax
mov ebx, esp
mov dword [esi + 0x58], ebx
push eax
mov ebx, esp
mov dword [esi + 0x5c], ebx
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
mov dword [esi + 0x60], ebx
push eax
mov ebx, esp
mov dword [esi + 0x64], ebx
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
mov dword [esi + 0x68], ebx
push eax
sub esp, 0x14
mov ebx, esp
mov dword [esi + 0x6c], ebx
push eax
mov ebx, esp
mov dword [esi + 0x70], ebx
push eax
mov ebx, esp
mov dword [esi + 0x74], ebx
push eax
mov ebx, esp
mov dword [esi + 0x78], ebx
push eax
mov ebx, esp
mov dword [esi + 0x7c], ebx
vmovsd qword [esi + 0x40], xmm0
mov dword [esi + 0x3c], edi
mov dword [ecx], edx
and al, 1
mov byte [esi + 0x83], al
mov dword [esi + 0x38], 0xabe65177
jmp 0x409565
mov ecx, dword [esi + 4]
vmovsd xmm0, qword [esi + 0x30]
mov dl, byte [esi + 0x2f]
vmovsd xmm1, qword [esi + 0x20]
mov eax, dword [esi + 0x48]
mov dh, byte [esi + 0x83]
mov byte [eax], dh
mov eax, dword [esi + 0x4c]
vmovsd qword [eax], xmm1
and dl, 1
mov eax, dword [esi + 0x50]
mov byte [eax], dl
mov eax, dword [esi + 0x54]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x58]
mov dword [eax], ecx
mov eax, dword [esi + 0x58]
mov eax, dword [esi + 0x5c]
mov dword [eax], 0xc48
mov eax, dword [esi + 0x60]
vmovsd xmm0, qword [0x434208]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x64]
mov byte [eax], 1
mov eax, dword [esi + 0x68]
vmovsd xmm0, qword [0x434200]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x6c]
lea eax, str.impmvefpmyflrqdfzkrxpkmnxigeqtkcupzjyctcrmlsmk
sub esp, 4
mov dword [esp], eax
call fcn.0041aef0
mov eax, dword [esi + 0x70]
mov byte [eax], 0
mov eax, dword [esi + 0x74]
mov byte [eax], 0
mov eax, dword [esi + 0x78]
mov byte [eax], 0
mov eax, dword [esi + 0x7c]
mov dword [eax], 0x55
mov dword [esi + 0x38], 0x3df22161
jmp 0x409565
mov eax, dword [esi + 0x7c]
mov eax, dword [eax]
mov dword [esi + 0x84], eax
mov dword [esi + 0x38], 0xb7c955f8
jmp 0x409565
mov eax, dword [esi + 0x84]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x8b], al
mov dword [esi + 0x38], 0xc18a77c8
jmp 0x409565
mov dl, byte [esi + 0x8b]
mov eax, 0xc2c72c7a
mov ecx, 0x8f844ba4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x38], eax
jmp 0x409565
mov ecx, dword [0x43d5b4]
mov eax, dword [0x43d5b0]
mov edx, ecx
add edx, 0xbddb170b
sub edx, 1
sub edx, 0xbddb170b
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, 0xf203c114
mov ecx, 0x69823aa1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x38], eax
jmp 0x409565
mov eax, dword [0x43d5b4]
mov ecx, dword [0x43d5b0]
mov edx, eax
add edx, 0x70437ec4
sub edx, 1
sub edx, 0x70437ec4
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, 0xf203c114
mov ecx, 0xebcdaad9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x38], eax
jmp 0x409565
mov dword [esi + 0x38], 0x3250ba9b
jmp 0x409565
mov eax, dword [esi + 0x7c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0xffffffff
sub eax, ecx
mov dword [esi + 0x8c], eax
mov dword [esi + 0x38], 0x3503d704
jmp 0x409565
mov eax, dword [esi + 0x7c]
mov ecx, dword [esi + 0x8c]
mov dword [eax], ecx
mov dword [esi + 0x38], 0x82edc1ea
jmp 0x409565
mov eax, dword [0x43d5b4]
mov ecx, dword [0x43d5b0]
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, 0x6d7bc884
mov ecx, 0xf93f3cea
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x38], eax
jmp 0x409565
mov ecx, dword [0x43d5b4]
mov eax, dword [0x43d5b0]
mov edx, ecx
add edx, 0xc721c35
sub edx, 1
sub edx, 0xc721c35
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, 0x6d7bc884
mov ecx, 0xadcab490
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x38], eax
jmp 0x409565
mov dword [esi + 0x38], 0x3df22161
jmp 0x409565
mov ecx, dword [esi + 0x6c]
call fcn.0041b1d0
mov dword [esi + 0x38], 0xc1b0a225
jmp 0x409565
mov ecx, dword [esi + 0x90]
xor ecx, ebp
call fcn.00425390
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x28
mov dword [esi + 0x38], 0x69823aa1
jmp 0x409565
mov dword [esi + 0x38], 0xf93f3cea
jmp 0x40908e