Function at 0x401b80
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 dword [esi + 0x10], 0x58e5b72
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
sub eax, 0x855d66cc
je 0x402575
jmp 0x401bc1
mov eax, dword [esi + 4]
sub eax, 0x91e4462f
je 0x401f94
jmp 0x401bd4
mov eax, dword [esi + 4]
sub eax, 0x99938f4c
je 0x402674
jmp 0x401be7
mov eax, dword [esi + 4]
sub eax, 0x9a94c978
je 0x402332
jmp 0x401bfa
mov eax, dword [esi + 4]
sub eax, 0xaa49ee17
je 0x402147
jmp 0x401c0d
mov eax, dword [esi + 4]
sub eax, 0xae0f39c4
je 0x402535
jmp 0x401c20
mov eax, dword [esi + 4]
sub eax, 0xb3afb8f1
je 0x4022a6
jmp 0x401c33
mov eax, dword [esi + 4]
sub eax, 0xbaab6860
je 0x40248d
jmp 0x401c46
mov eax, dword [esi + 4]
sub eax, 0xbe7366dc
je 0x4023a5
jmp 0x401c59
mov eax, dword [esi + 4]
sub eax, 0xc0a90f3b
je 0x4026b3
jmp 0x401c6c
mov eax, dword [esi + 4]
sub eax, 0xc62cf210
je 0x40250c
jmp 0x401c7f
mov eax, dword [esi + 4]
sub eax, 0xc7ecef40
je 0x402045
jmp 0x401c92
mov eax, dword [esi + 4]
sub eax, 0xce56eab8
je 0x4026bf
jmp 0x401ca5
mov eax, dword [esi + 4]
sub eax, 0xd1f8b0f8
je 0x402223
jmp 0x401cb8
mov eax, dword [esi + 4]
sub eax, 0xd79b44d1
je 0x4021be
jmp 0x401ccb
mov eax, dword [esi + 4]
sub eax, 0xd83131f1
je 0x40207a
jmp 0x401cde
mov eax, dword [esi + 4]
sub eax, 0xeb2589f6
je 0x401ee6
jmp 0x401cf1
mov eax, dword [esi + 4]
sub eax, 0xf1f8a53d
je 0x402153
jmp 0x401d04
mov eax, dword [esi + 4]
sub eax, 0xf5045d62
je 0x402529
jmp 0x401d17
mov eax, dword [esi + 4]
sub eax, 0xfb2e0db3
je 0x40222f
jmp 0x401d2a
mov eax, dword [esi + 4]
sub eax, 0x58e5b72
je 0x401e98
jmp 0x401d3d
mov eax, dword [esi + 4]
sub eax, 0x62ccd47
je 0x401fa0
jmp 0x401d50
mov eax, dword [esi + 4]
sub eax, 0x74415c6
je 0x402665
jmp 0x401d63
mov eax, dword [esi + 4]
sub eax, 0xe8bd749
je 0x4025e0
jmp 0x401d76
mov eax, dword [esi + 4]
sub eax, 0xf476b27
je 0x40241a
jmp 0x401d89
mov eax, dword [esi + 4]
sub eax, 0x1000ca27
je 0x40231a
jmp 0x401d9c
mov eax, dword [esi + 4]
sub eax, 0x1062e0f1
je 0x402659
jmp 0x401daf
mov eax, dword [esi + 4]
sub eax, 0x1f0d2313
je 0x402326
jmp 0x401dc2
mov eax, dword [esi + 4]
sub eax, 0x2125e677
je 0x402500
jmp 0x401dd5
mov eax, dword [esi + 4]
sub eax, 0x26befa35
je 0x4023f3
jmp 0x401de8
mov eax, dword [esi + 4]
sub eax, 0x2fa49959
je 0x40205f
jmp 0x401dfb
mov eax, dword [esi + 4]
sub eax, 0x30f33123
je 0x4026a4
jmp 0x401e0e
mov eax, dword [esi + 4]
sub eax, 0x41b2215b
je 0x402031
jmp 0x401e21
mov eax, dword [esi + 4]
sub eax, 0x49ff5783
je 0x402086
jmp 0x401e34
mov eax, dword [esi + 4]
sub eax, 0x4b67cec4
je 0x4020f1
jmp 0x401e47
mov eax, dword [esi + 4]
sub eax, 0x4f37dc41
je 0x40268f
jmp 0x401e5a
mov eax, dword [esi + 4]
sub eax, 0x5955e732
je 0x40263e
jmp 0x401e6d
mov eax, dword [esi + 4]
sub eax, 0x59f574cd
je 0x4023ff
jmp 0x401e80
mov eax, dword [esi + 4]
sub eax, 0x6d5d6232
je 0x40223b
jmp 0x401e93
jmp 0x4026ce
mov eax, dword [0x43f61c]
mov ecx, dword [0x43f618]
mov edx, eax
sub edx, 0x1669f91f
sub edx, 1
add edx, 0x1669f91f
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, 0x1062e0f1
mov ecx, 0xeb2589f6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov eax, dword [esi + 0xc]
push eax
mov ecx, esp
mov dword [esi + 0x20], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [esi + 0x24], ecx
push eax
mov ecx, esp
mov dword [esi + 0x28], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [esi + 0x2c], ecx
push eax
sub esp, 0x14
mov ecx, esp
mov dword [esi + 0x30], ecx
push eax
mov ecx, esp
mov dword [esi + 0x34], ecx
push eax
mov ecx, esp
mov dword [esi + 0x38], ecx
mov eax, dword [eax]
mov dword [esi + 0x3c], eax
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0x1062e0f1
mov ecx, 0x91e4462f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0x62ccd47
jmp 0x4026ce
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov edx, ecx
add edx, 0xc
mov dword [esi + 0x40], edx
mov edx, ecx
add edx, 0x34
mov dword [esi + 0x44], edx
add ecx, 0x60
mov dword [esi + 0x48], ecx
mov dword [esi + 0x1c], eax
lea ecx, [esi + 0x60]
lea eax, [0x437278]
sub esp, 4
mov dword [esp], eax
call fcn.0041d5f0
mov dword [esi + 0x18], 0x1002
mov byte [esi + 0x17], 1
mov eax, dword [esi + 0x20]
mov byte [eax], 0
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x4371b8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x28]
mov byte [eax], 0
mov eax, dword [esi + 0x2c]
vmovsd xmm0, qword [0x4371b0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x30]
lea eax, str.ajyzviyftunjtpamkcfbmjxyqupgrvqazwlrn
sub esp, 4
mov dword [esp], eax
call fcn.0041d5f0
mov eax, dword [esi + 0x34]
mov dword [eax], 0xe
mov dword [esi + 0x10], 0x41b2215b
jmp 0x4026ce
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov dword [esi + 0x4c], eax
mov dword [esi + 0x10], 0xc7ecef40
jmp 0x4026ce
mov eax, dword [esi + 0x4c]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x53], al
mov dword [esi + 0x10], 0x2fa49959
jmp 0x4026ce
mov dl, byte [esi + 0x53]
mov eax, 0x6d5d6232
mov ecx, 0xd83131f1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0x49ff5783
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0x74415c6
mov ecx, 0x4b67cec4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov dword [esi + 0x54], eax
mov eax, dword [0x43f61c]
mov ecx, dword [0x43f618]
mov edx, eax
sub edx, 0x666a30c0
sub edx, 1
add edx, 0x666a30c0
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, 0x74415c6
mov ecx, 0xaa49ee17
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0xf1f8a53d
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0x99938f4c
mov ecx, 0xd79b44d1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov ecx, dword [esi + 0x54]
add ecx, 0x7c770351
add ecx, 0xffffffff
sub ecx, 0x7c770351
mov eax, dword [esi + 0x34]
mov dword [eax], ecx
mov eax, dword [0x43f61c]
mov ecx, dword [0x43f618]
mov edx, eax
add edx, 0xa8b2a892
sub edx, 1
sub edx, 0xa8b2a892
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, 0x99938f4c
mov ecx, 0xd1f8b0f8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0xfb2e0db3
jmp 0x4026ce
mov dword [esi + 0x10], 0x41b2215b
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0x4f37dc41
mov ecx, 0xb3afb8f1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov eax, dword [esi + 0x38]
mov dword [eax], 0x20
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0x4f37dc41
mov ecx, 0x1000ca27
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0x1f0d2313
jmp 0x4026ce
mov dword [esi + 0x10], 0x9a94c978
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
mov edx, ecx
sub edx, 0xf556dfbe
sub edx, 1
add edx, 0xf556dfbe
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, 0x30f33123
mov ecx, 0xbe7366dc
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [esi + 0x58], eax
mov eax, dword [0x43f61c]
mov ecx, dword [0x43f618]
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, 0x30f33123
mov ecx, 0x26befa35
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0x59f574cd
jmp 0x4026ce
mov edx, dword [esi + 0x58]
mov eax, 0xae0f39c4
mov ecx, 0xf476b27
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
mov edx, ecx
sub edx, 0xdbcc4ff7
sub edx, 1
add edx, 0xdbcc4ff7
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, 0xc0a90f3b
mov ecx, 0xbaab6860
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
mov edx, ecx
add edx, 0x9355363f
sub edx, 1
sub edx, 0x9355363f
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, 0xc0a90f3b
mov ecx, 0x2125e677
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov dword [esi + 0x10], 0xc62cf210
jmp 0x4026ce
mov eax, dword [esi + 0x38]
mov ecx, dword [eax]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x38]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xf5045d62
jmp 0x4026ce
mov dword [esi + 0x10], 0x9a94c978
jmp 0x4026ce
mov ecx, dword [esi + 0x3c]
lea eax, str.gjiftf
sub esp, 4
mov dword [esp], eax
call fcn.0041d5f0
mov ecx, dword [esi + 0x30]
call fcn.0041d480
lea ecx, [esi + 0x60]
call fcn.0041d480
mov ecx, dword [esi + 0x40]
call fcn.0041d480
mov ecx, dword [esi + 0x44]
call fcn.0041d480
mov dword [esi + 0x10], 0x855d66cc
jmp 0x4026ce
mov ecx, dword [0x43f61c]
mov eax, dword [0x43f618]
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, 0xce56eab8
mov ecx, 0xe8bd749
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov ecx, dword [esi + 0x48]
call fcn.0041d480
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 0x5c], eax
mov eax, dword [0x43f61c]
mov ecx, dword [0x43f618]
mov edx, eax
sub edx, 0xf4921118
sub edx, 1
add edx, 0xf4921118
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, 0xce56eab8
mov ecx, 0x5955e732
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x4026ce
mov eax, dword [esi + 0x5c]
mov dword [esi], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.004277e0
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x78
mov dword [esi + 0x10], 0xeb2589f6
jmp 0x4026ce
mov eax, dword [esi + 0x34]
mov dword [esi + 0x10], 0x4b67cec4
jmp 0x4026ce
mov ecx, dword [esi + 0x54]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x34]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xd79b44d1
jmp 0x4026ce
mov eax, dword [esi + 0x38]
mov dword [eax], 0x20
mov dword [esi + 0x10], 0xb3afb8f1
jmp 0x4026ce
mov eax, dword [esi + 0x38]
mov dword [esi + 0x10], 0xbe7366dc
jmp 0x4026ce
mov dword [esi + 0x10], 0xbaab6860
jmp 0x4026ce
mov ecx, dword [esi + 0x48]
call fcn.0041d480
mov dword [esi + 0x10], 0xe8bd749
jmp 0x401bab