Function at 0x4046d0
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 + 0x38], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x3c], eax
mov eax, dword [0x439080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x43a59c]
mov eax, dword [0x43a598]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x46], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x47], al
mov dword [esi + 0x40], 0x5e9fc541
mov eax, dword [esi + 0x40]
mov dword [esi + 0x34], eax
sub eax, 0xad913b67
je 0x404bee
jmp 0x404742
mov eax, dword [esi + 0x34]
sub eax, 0xb78fc6f4
je 0x404c11
jmp 0x404755
mov eax, dword [esi + 0x34]
sub eax, 0xc276f021
je 0x404c25
jmp 0x404768
mov eax, dword [esi + 0x34]
sub eax, 0xcf52851e
je 0x404b6f
jmp 0x40477b
mov eax, dword [esi + 0x34]
sub eax, 0xd1ae1b3b
je 0x404b63
jmp 0x40478e
mov eax, dword [esi + 0x34]
sub eax, 0xdbbaf3ed
je 0x404bb3
jmp 0x4047a1
mov eax, dword [esi + 0x34]
sub eax, 0xe19c015b
je 0x404c8e
jmp 0x4047b4
mov eax, dword [esi + 0x34]
sub eax, 0xfcec51d0
je 0x4048e8
jmp 0x4047c7
mov eax, dword [esi + 0x34]
sub eax, 0x1163ccb
je 0x404973
jmp 0x4047da
mov eax, dword [esi + 0x34]
sub eax, 0x11b0b3c3
je 0x404be2
jmp 0x4047ed
mov eax, dword [esi + 0x34]
sub eax, 0x2eba6780
je 0x4049de
jmp 0x404800
mov eax, dword [esi + 0x34]
sub eax, 0x3b39d20f
je 0x404c6f
jmp 0x404813
mov eax, dword [esi + 0x34]
sub eax, 0x41157dd2
je 0x404b92
jmp 0x404826
mov eax, dword [esi + 0x34]
sub eax, 0x49457467
je 0x404bc7
jmp 0x404839
mov eax, dword [esi + 0x34]
sub eax, 0x4ded5df1
je 0x404ba7
jmp 0x40484c
mov eax, dword [esi + 0x34]
sub eax, 0x508db890
je 0x404c31
jmp 0x40485f
mov eax, dword [esi + 0x34]
sub eax, 0x5e9fc541
je 0x40489d
jmp 0x404872
mov eax, dword [esi + 0x34]
sub eax, 0x75d8aa0b
je 0x404967
jmp 0x404885
mov eax, dword [esi + 0x34]
sub eax, 0x775052d3
je 0x404c9a
jmp 0x404898
jmp 0x404d9a
mov bl, byte [esi + 0x46]
mov dh, byte [esi + 0x47]
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, 0xe19c015b
mov ecx, 0xfcec51d0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
push eax
mov eax, esp
mov dword [esi + 0x48], eax
push eax
mov eax, esp
mov dword [esi + 0x4c], eax
mov ecx, dword [0x43a59c]
mov eax, dword [0x43a598]
mov edx, ecx
sub edx, 0x631ccf24
sub edx, 1
add edx, 0x631ccf24
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, 0xe19c015b
mov ecx, 0x75d8aa0b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
mov dword [esi + 0x40], 0x1163ccb
jmp 0x404d9a
mov ecx, dword [0x43a59c]
mov eax, dword [0x43a598]
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, 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, 0x775052d3
mov ecx, 0x2eba6780
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
mov edi, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
push eax
mov ecx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
sub esp, 0x14
mov ebx, esp
mov dword [esi + 0x50], ebx
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov dword [esi + 0x20], ebx
mov esp, ebx
push eax
mov ebx, esp
mov dword [esi + 0x24], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x54], ebx
push eax
mov ebx, esp
mov dword [esi + 0x28], ebx
push eax
mov ebx, esp
mov dword [esi + 0x2c], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x58], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x30], ebx
push eax
mov ebx, esp
mov dword [esi + 0x5c], ebx
mov ebx, dword [edx]
mov dword [esi + 0x60], ebx
add edx, 0xc
mov dword [esi + 0x64], edx
mov edx, dword [esi + 0x48]
mov dword [edx], edi
mov edx, dword [esi + 0x48]
mov edx, dword [esi + 0x4c]
mov byte [edx], 0
mov byte [ecx], 0
vmovsd xmm0, qword [0x4321e0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x50]
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x4321d8]
vmovsd qword [ecx], xmm0
mov byte [eax], 0
mov ecx, dword [esi + 0x54]
lea eax, [0x432294]
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [ecx], 0xe5e
mov byte [eax], 1
mov ecx, dword [esi + 0x58]
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x30]
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x30]
mov eax, dword [esi + 0x58]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004186c0
mov ecx, dword [esi + 0x30]
add esp, 8
and al, 1
mov byte [esi + 0x6b], al
call fcn.00418090
mov ecx, dword [0x43a59c]
mov eax, dword [0x43a598]
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, 0x775052d3
mov ecx, 0xd1ae1b3b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
mov dword [esi + 0x40], 0xcf52851e
jmp 0x404d9a
mov ecx, dword [esi + 0x58]
call fcn.00418090
mov dl, byte [esi + 0x6b]
mov eax, 0x508db890
mov ecx, 0x41157dd2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
mov eax, dword [esi + 0x5c]
mov dword [eax], 0x22
mov dword [esi + 0x40], 0x4ded5df1
jmp 0x404d9a
mov dword [esi + 0x40], 0xdbbaf3ed
jmp 0x404d9a
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov dword [esi + 0x40], 0x49457467
jmp 0x404d9a
mov edx, dword [esi + 0x6c]
mov eax, 0xc276f021
mov ecx, 0x11b0b3c3
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x40], eax
jmp 0x404d9a
mov dword [esi + 0x40], 0xad913b67
jmp 0x404d9a
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xffffffff
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esi + 0x70], eax
mov dword [esi + 0x40], 0xb78fc6f4
jmp 0x404d9a
mov eax, dword [esi + 0x5c]
mov ecx, dword [esi + 0x70]
mov dword [eax], ecx
mov dword [esi + 0x40], 0xdbbaf3ed
jmp 0x404d9a
mov dword [esi + 0x40], 0x508db890
jmp 0x404d9a
mov ecx, dword [esi + 0x60]
lea eax, [0x432296]
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x54]
call fcn.00418090
mov ecx, dword [esi + 0x50]
call fcn.00418090
mov ecx, dword [esi + 0x64]
call fcn.00418090
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x74], eax
mov dword [esi + 0x40], 0x3b39d20f
jmp 0x404d9a
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [esi + 0x1c], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.00423510
mov eax, dword [esi + 0x1c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x24
mov dword [esi + 0x40], 0xfcec51d0
jmp 0x404d9a
mov ebx, dword [esi + 0x38]
push eax
mov edx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
sub esp, 0x14
mov ecx, esp
sub esp, 8
mov edi, esp
and edi, 0xfffffff8
mov dword [esi], edi
mov esp, edi
push eax
mov edi, esp
mov dword [esi + 8], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 4], edi
push eax
mov edi, esp
mov dword [esi + 0xc], edi
push eax
mov edi, esp
mov dword [esi + 0x10], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x14], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x18], edi
mov edi, dword [esi + 0x48]
mov dword [edi], ebx
mov edi, dword [esi + 0x48]
mov edi, dword [esi + 0x4c]
mov byte [edi], 0
mov byte [edx], 0
vmovsd xmm0, qword [0x4321e0]
vmovsd qword [eax], xmm0
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov edx, dword [esi]
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
vmovsd xmm0, qword [0x4321d8]
vmovsd qword [edx], xmm0
mov byte [eax], 0
lea eax, [0x432294]
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
mov dword [edx], 0xe5e
mov byte [eax], 1
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x18]
lea eax, str.xmoznalvatenveiqolzqxdcpbfdef
sub esp, 4
mov dword [esp], eax
call fcn.00417d70
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x14]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004186c0
mov ecx, dword [esi + 0x18]
add esp, 8
call fcn.00418090
mov dword [esi + 0x40], 0x2eba6780
jmp 0x40472c