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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc0
mov esi, esp
mov dword [esi + 0x30], ecx
mov eax, dword [ebp + 0x30]
mov dword [esi + 0x34], eax
mov al, byte [ebp + 0x2c]
mov byte [esi + 0x3b], al
mov eax, dword [ebp + 0x28]
mov dword [esi + 0x3c], eax
vmovsd xmm0, qword [ebp + 0x20]
vmovsd qword [esi + 0x40], xmm0
vmovsd xmm0, qword [ebp + 0x18]
vmovsd qword [esi + 0x48], xmm0
vmovsd xmm0, qword [ebp + 0x10]
vmovsd qword [esi + 0x50], xmm0
vmovsd xmm0, qword [ebp + 8]
vmovsd qword [esi + 0x58], xmm0
mov eax, dword [0x440080]
xor eax, ebp
mov dword [esi + 0xb8], eax
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
sub edx, 0x3419bd5c
sub edx, 1
add edx, 0x3419bd5c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x66], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x67], al
mov dword [esi + 0x60], 0x5d1346ba
mov eax, dword [esi + 0x60]
mov dword [esi + 0x2c], eax
sub eax, 0x80828c78
je 0x40727c
jmp 0x406b01
mov eax, dword [esi + 0x2c]
sub eax, 0x8c144500
je 0x40774c
jmp 0x406b14
mov eax, dword [esi + 0x2c]
sub eax, 0x8c80b34b
je 0x407bcf
jmp 0x406b27
mov eax, dword [esi + 0x2c]
sub eax, 0x8c988e19
je 0x4076cb
jmp 0x406b3a
mov eax, dword [esi + 0x2c]
sub eax, 0x8d985e54
je 0x406fe7
jmp 0x406b4d
mov eax, dword [esi + 0x2c]
sub eax, 0x93256a67
je 0x407943
jmp 0x406b60
mov eax, dword [esi + 0x2c]
sub eax, 0x9567d72f
je 0x407819
jmp 0x406b73
mov eax, dword [esi + 0x2c]
sub eax, 0x95b1a8c9
je 0x406f8d
jmp 0x406b86
mov eax, dword [esi + 0x2c]
sub eax, 0x96885fad
je 0x407bac
jmp 0x406b99
mov eax, dword [esi + 0x2c]
sub eax, 0xa49b21d4
je 0x407b70
jmp 0x406bac
mov eax, dword [esi + 0x2c]
sub eax, 0xadfa4f49
je 0x407635
jmp 0x406bbf
mov eax, dword [esi + 0x2c]
sub eax, 0xbae143a8
je 0x4073cc
jmp 0x406bd2
mov eax, dword [esi + 0x2c]
sub eax, 0xc4b17ee8
je 0x4072f3
jmp 0x406be5
mov eax, dword [esi + 0x2c]
sub eax, 0xc5233364
je 0x40779a
jmp 0x406bf8
mov eax, dword [esi + 0x2c]
sub eax, 0xcf01f6f2
je 0x4075db
jmp 0x406c0b
mov eax, dword [esi + 0x2c]
sub eax, 0xd7681dca
je 0x40743a
jmp 0x406c1e
mov eax, dword [esi + 0x2c]
sub eax, 0xd93a506f
je 0x40789e
jmp 0x406c31
mov eax, dword [esi + 0x2c]
sub eax, 0xd95b0b25
je 0x407734
jmp 0x406c44
mov eax, dword [esi + 0x2c]
sub eax, 0xde471f5b
je 0x407992
jmp 0x406c57
mov eax, dword [esi + 0x2c]
sub eax, 0xdef2221a
je 0x406f08
jmp 0x406c6a
mov eax, dword [esi + 0x2c]
sub eax, 0xe3bf90ba
je 0x406f99
jmp 0x406c7d
mov eax, dword [esi + 0x2c]
sub eax, 0xec8e56b4
je 0x407bed
jmp 0x406c90
mov eax, dword [esi + 0x2c]
sub eax, 0xef0bac3f
je 0x4074ad
jmp 0x406ca3
mov eax, dword [esi + 0x2c]
sub eax, 0xf43b81d4
je 0x407aa3
jmp 0x406cb6
mov eax, dword [esi + 0x2c]
sub eax, 0xf9e557b3
je 0x407925
jmp 0x406cc9
mov eax, dword [esi + 0x2c]
sub eax, 0xfbcde7e8
je 0x40758c
jmp 0x406cdc
mov eax, dword [esi + 0x2c]
sub eax, 0x1ad47ba
je 0x4076bf
jmp 0x406cef
mov eax, dword [esi + 0x2c]
sub eax, 0xabbd3f3
je 0x407a27
jmp 0x406d02
mov eax, dword [esi + 0x2c]
sub eax, 0x1a1d2763
je 0x40794f
jmp 0x406d15
mov eax, dword [esi + 0x2c]
sub eax, 0x208b4d1c
je 0x407bdb
jmp 0x406d28
mov eax, dword [esi + 0x2c]
sub eax, 0x20f9fe32
je 0x4079b4
jmp 0x406d3b
mov eax, dword [esi + 0x2c]
sub eax, 0x2436f3cb
je 0x40780d
jmp 0x406d4e
mov eax, dword [esi + 0x2c]
sub eax, 0x2652b3bc
je 0x4075b2
jmp 0x406d61
mov eax, dword [esi + 0x2c]
sub eax, 0x2b24c359
je 0x4073c0
jmp 0x406d74
mov eax, dword [esi + 0x2c]
sub eax, 0x391385e6
je 0x407b88
jmp 0x406d87
mov eax, dword [esi + 0x2c]
sub eax, 0x3e11aa04
je 0x4075e7
jmp 0x406d9a
mov eax, dword [esi + 0x2c]
sub eax, 0x3ffc5ce3
je 0x407b94
jmp 0x406dad
mov eax, dword [esi + 0x2c]
sub eax, 0x42299fe9
je 0x4072ff
jmp 0x406dc0
mov eax, dword [esi + 0x2c]
sub eax, 0x48a70313
je 0x407a80
jmp 0x406dd3
mov eax, dword [esi + 0x2c]
sub eax, 0x4f772295
je 0x40716b
jmp 0x406de6
mov eax, dword [esi + 0x2c]
sub eax, 0x5058c016
je 0x407598
jmp 0x406df9
mov eax, dword [esi + 0x2c]
sub eax, 0x55e8dd90
je 0x40722e
jmp 0x406e0c
mov eax, dword [esi + 0x2c]
sub eax, 0x591f1e10
je 0x407833
jmp 0x406e1f
mov eax, dword [esi + 0x2c]
sub eax, 0x5d1346ba
je 0x406ee2
jmp 0x406e32
mov eax, dword [esi + 0x2c]
sub eax, 0x5ee811f9
je 0x407aaf
jmp 0x406e45
mov eax, dword [esi + 0x2c]
sub eax, 0x63a2c68d
je 0x4073ec
jmp 0x406e58
mov eax, dword [esi + 0x2c]
sub eax, 0x6cb84dcf
je 0x407ba0
jmp 0x406e6b
mov eax, dword [esi + 0x2c]
sub eax, 0x74428a6a
je 0x407986
jmp 0x406e7e
mov eax, dword [esi + 0x2c]
sub eax, 0x77b7e60b
je 0x4074cb
jmp 0x406e91
mov eax, dword [esi + 0x2c]
sub eax, 0x7a2d1f2e
je 0x407177
jmp 0x406ea4
mov eax, dword [esi + 0x2c]
sub eax, 0x7b20c213
je 0x407372
jmp 0x406eb7
mov eax, dword [esi + 0x2c]
sub eax, 0x7e174d6f
je 0x40797a
jmp 0x406eca
mov eax, dword [esi + 0x2c]
sub eax, 0x7f5e34f4
je 0x407519
jmp 0x406edd
jmp 0x407bff
mov al, byte [esi + 0x66]
mov cl, byte [esi + 0x67]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf43b81d4
mov ecx, 0xdef2221a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
push eax
mov eax, esp
mov dword [esi + 0x68], eax
push eax
mov eax, esp
mov dword [esi + 0x6c], eax
push eax
mov eax, esp
mov dword [esi + 0x70], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x74], eax
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x78], eax
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x7c], eax
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0xbfcd2b01
sub edx, 1
add edx, 0xbfcd2b01
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, 0xf43b81d4
mov ecx, 0x95b1a8c9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0xe3bf90ba
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0x9fdcba0c
sub edx, 1
add edx, 0x9fdcba0c
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, 0x5ee811f9
mov ecx, 0x8d985e54
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
vmovsd xmm0, qword [esi + 0x58]
vmovsd xmm1, qword [esi + 0x50]
vmovsd xmm2, qword [esi + 0x48]
vmovsd xmm3, qword [esi + 0x40]
mov edx, dword [esi + 0x34]
push eax
push eax
mov edi, esp
and edi, 0xfffffff8
mov esp, edi
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 + 0x80], ebx
push eax
mov ebx, esp
mov dword [esi + 0x20], ebx
push eax
mov ebx, esp
mov dword [esi + 0x24], ebx
push eax
mov ebx, esp
mov dword [esi + 0x28], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x84], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x88], ebx
push eax
mov ebx, esp
mov dword [esi + 0x8c], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x90], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x94], ebx
push eax
mov ebx, esp
mov dword [esi + 0x98], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x9c], ebx
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0xa0], ebx
push eax
mov ebx, esp
mov dword [esi + 0xa4], ebx
mov ebx, dword [esi + 0x68]
mov dword [ebx], edx
mov dl, byte [esi + 0x3b]
and dl, 1
mov ebx, dword [esi + 0x6c]
mov byte [ebx], dl
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x70]
mov dword [ebx], edx
mov edx, dword [esi + 0x30]
mov ebx, dword [esi + 0x74]
vmovsd qword [ebx], xmm3
mov ebx, dword [esi + 0x78]
vmovsd qword [ebx], xmm2
mov ebx, dword [esi + 0x7c]
vmovsd qword [ebx], xmm1
vmovsd qword [edi], xmm0
mov dword [ecx], edx
vmovsd xmm0, qword [0x438278]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x80]
lea eax, str.ojxdmttjvyishqzxfixzyerewsjavlqywmpktlghzqothsycmvgunljvnirqtwhaqabzkmvkyowlufacibezyrlkvyy
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov edx, dword [esi + 0x20]
mov ecx, dword [esi + 0x24]
mov eax, dword [esi + 0x28]
mov dword [edx], 0x6e0
mov byte [ecx], 1
mov dword [eax], 0xcfc
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
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, 0x5ee811f9
mov ecx, 0x4f772295
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x7a2d1f2e
jmp 0x407bff
mov ecx, dword [esi + 0x84]
lea eax, str.zzpjaxlilbvtnbnvllmumdtykppkiqahcjvzhmwafnchhranrzxgvvuvtovwbjbqjaojxslmuipcjamvmbrhbaubqdgg
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov ecx, dword [esi + 0x88]
lea eax, [0x4387d7]
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov eax, dword [esi + 0x8c]
mov byte [eax], 0
mov ecx, dword [esi + 0x90]
lea eax, str.zzpjaxlilbvtnbnvllmumdtykppkiqahcjvzhmwafnchhranrzxgvvuvtovwbjbqjaojxslmuipcjamvmbrhbaubqdgg
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov ecx, dword [esi + 0x94]
lea eax, str.zzpjaxlilbvtnbnvllmumdtykppkiqahcjvzhmwafnchhranrzxgvvuvtovwbjbqjaojxslmuipcjamvmbrhbaubqdgg
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov eax, dword [esi + 0x90]
mov ecx, dword [esi + 0x94]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041f130
add esp, 8
mov byte [esi + 0x1f], al
mov ecx, dword [esi + 0x94]
call fcn.0041ecc0
mov ecx, dword [esi + 0x90]
call fcn.0041ecc0
mov dl, byte [esi + 0x1f]
mov eax, 0x3e11aa04
mov ecx, 0x55e8dd90
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0xf2f823ba
sub edx, 1
add edx, 0xf2f823ba
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, 0xa49b21d4
mov ecx, 0x80828c78
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [esi + 0x98]
mov dword [eax], 0x5e
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
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, 0xa49b21d4
mov ecx, 0xc4b17ee8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x42299fe9
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0x22105642
sub edx, 1
sub edx, 0x22105642
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, 0x391385e6
mov ecx, 0x7b20c213
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
add edx, 0xbb5b733f
sub edx, 1
sub edx, 0xbb5b733f
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, 0x391385e6
mov ecx, 0x2b24c359
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0xbae143a8
jmp 0x407bff
mov eax, dword [esi + 0x98]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0xab], al
mov dword [esi + 0x60], 0x63a2c68d
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0x38c9fa3f
sub edx, 1
add edx, 0x38c9fa3f
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, 0x3ffc5ce3
mov ecx, 0xd7681dca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0x8675029d
sub edx, 1
sub edx, 0x8675029d
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, 0x3ffc5ce3
mov ecx, 0xef0bac3f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dl, byte [esi + 0xab]
mov eax, 0xcf01f6f2
mov ecx, 0x77b7e60b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0x25756455
sub edx, 1
add edx, 0x25756455
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, 0x6cb84dcf
mov ecx, 0x7f5e34f4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0x9c6eba95
sub edx, 1
sub edx, 0x9c6eba95
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, 0x6cb84dcf
mov ecx, 0xfbcde7e8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x5058c016
jmp 0x407bff
mov eax, dword [esi + 0x98]
mov eax, dword [eax]
mov dword [esi + 0xac], eax
mov dword [esi + 0x60], 0x2652b3bc
jmp 0x407bff
mov ecx, dword [esi + 0xac]
sub ecx, 0xdf4a3288
add ecx, 0xffffffff
add ecx, 0xdf4a3288
mov eax, dword [esi + 0x98]
mov dword [eax], ecx
mov dword [esi + 0x60], 0xbae143a8
jmp 0x407bff
mov dword [esi + 0x60], 0x3e11aa04
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0xbe133dc8
sub edx, 1
add edx, 0xbe133dc8
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, 0x96885fad
mov ecx, 0xadfa4f49
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov ecx, dword [esi + 0x9c]
lea eax, [0x4387d7]
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0x8927a0ba
sub edx, 1
sub edx, 0x8927a0ba
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, 0x96885fad
mov ecx, 0x1ad47ba
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x8c988e19
jmp 0x407bff
mov ecx, dword [esi + 0xa0]
lea eax, [0x4387d7]
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov eax, dword [esi + 0x9c]
mov ecx, dword [esi + 0xa0]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041f3f0
add esp, 8
mov byte [esi + 0x1e], al
mov ecx, dword [esi + 0xa0]
call fcn.0041ecc0
mov ecx, dword [esi + 0x9c]
call fcn.0041ecc0
mov dl, byte [esi + 0x1e]
mov eax, 0xde471f5b
mov ecx, 0xd95b0b25
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [esi + 0xa4]
mov dword [eax], 0
mov dword [esi + 0x60], 0x8c144500
jmp 0x407bff
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0xd4cd43dd
sub edx, 1
add edx, 0xd4cd43dd
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, 0x8c80b34b
mov ecx, 0xc5233364
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0x4d8a15ca
sub edx, 1
sub edx, 0x4d8a15ca
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, 0x8c80b34b
mov ecx, 0x2436f3cb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x9567d72f
jmp 0x407bff
mov eax, dword [esi + 0xa4]
mov eax, dword [eax]
mov dword [esi + 0xb0], eax
mov dword [esi + 0x60], 0x591f1e10
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
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, 0x208b4d1c
mov ecx, 0xd93a506f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov eax, dword [esi + 0xb0]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0xb7], al
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0xc664b524
sub edx, 1
sub edx, 0xc664b524
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, 0x208b4d1c
mov ecx, 0xf9e557b3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dl, byte [esi + 0xb7]
mov eax, 0x74428a6a
mov ecx, 0x93256a67
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov dword [esi + 0x60], 0x1a1d2763
jmp 0x407bff
mov eax, dword [esi + 0xa4]
mov ecx, dword [eax]
add ecx, 0x93538452
add ecx, 0xffffffff
sub ecx, 0x93538452
mov eax, dword [esi + 0xa4]
mov dword [eax], ecx
mov dword [esi + 0x60], 0x7e174d6f
jmp 0x407bff
mov dword [esi + 0x60], 0x9567d72f
jmp 0x407bff
mov dword [esi + 0x60], 0xde471f5b
jmp 0x407bff
mov ecx, dword [esi + 0x88]
call fcn.0041ecc0
mov ecx, dword [esi + 0x84]
call fcn.0041ecc0
mov dword [esi + 0x60], 0x20f9fe32
jmp 0x407bff
mov ecx, dword [0x4415c4]
mov eax, dword [0x4415c0]
mov edx, ecx
add edx, 0xa051e2aa
sub edx, 1
sub edx, 0xa051e2aa
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, 0xec8e56b4
mov ecx, 0xabbd3f3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
mov ecx, dword [esi + 0x80]
call fcn.0041ecc0
mov eax, dword [0x4415c4]
mov ecx, dword [0x4415c0]
mov edx, eax
sub edx, 0x2a3f48fb
sub edx, 1
add edx, 0x2a3f48fb
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, 0xec8e56b4
mov ecx, 0x48a70313
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x60], eax
jmp 0x407bff
fld dword [0x438280]
fstp xword [esi + 0x14]
mov ecx, dword [esi + 0xb8]
xor ecx, ebp
call fcn.00429490
fld xword [esi + 0x14]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x2c
mov dword [esi + 0x60], 0xdef2221a
jmp 0x407bff
vmovsd xmm0, qword [esi + 0x58]
vmovsd xmm1, qword [esi + 0x50]
vmovsd xmm2, qword [esi + 0x48]
vmovsd xmm3, qword [esi + 0x40]
mov eax, dword [esi + 0x34]
push eax
push eax
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
push eax
mov edx, esp
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 4], ecx
mov esp, ecx
push eax
sub esp, 0x14
mov ecx, esp
push eax
mov edi, esp
mov dword [esi + 8], edi
push eax
mov edi, esp
mov dword [esi + 0xc], edi
push eax
mov edi, esp
mov dword [esi + 0x10], edi
mov edi, dword [esi + 0x68]
mov dword [edi], eax
mov al, byte [esi + 0x3b]
and al, 1
mov edi, dword [esi + 0x6c]
mov byte [edi], al
mov eax, dword [esi + 0x3c]
mov edi, dword [esi + 0x70]
mov dword [edi], eax
mov eax, dword [esi + 4]
mov edi, dword [esi + 0x74]
vmovsd qword [edi], xmm3
mov edi, dword [esi + 0x78]
vmovsd qword [edi], xmm2
mov edi, dword [esi + 0x7c]
vmovsd qword [edi], xmm1
mov edi, dword [esi + 0x30]
vmovsd qword [ebx], xmm0
mov dword [edx], edi
vmovsd xmm0, qword [0x438278]
vmovsd qword [eax], xmm0
lea eax, str.ojxdmttjvyishqzxfixzyerewsjavlqywmpktlghzqothsycmvgunljvnirqtwhaqabzkmvkyowlufacibezyrlkvyy
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
mov dword [edx], 0x6e0
mov byte [ecx], 1
mov dword [eax], 0xcfc
mov dword [esi + 0x60], 0x8d985e54
jmp 0x407bff
mov eax, dword [esi + 0x98]
mov dword [eax], 0x5e
mov dword [esi + 0x60], 0x80828c78
jmp 0x407bff
mov dword [esi + 0x60], 0x7b20c213
jmp 0x407bff
mov dword [esi + 0x60], 0xd7681dca
jmp 0x407bff
mov dword [esi + 0x60], 0x7f5e34f4
jmp 0x407bff
mov ecx, dword [esi + 0x9c]
lea eax, [0x4387d7]
sub esp, 4
mov dword [esp], eax
call fcn.0041ef60
mov dword [esi + 0x60], 0xadfa4f49
jmp 0x407bff
mov dword [esi + 0x60], 0xc5233364
jmp 0x407bff
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x60], 0xd93a506f
jmp 0x407bff
mov ecx, dword [esi + 0x80]
call fcn.0041ecc0
mov dword [esi + 0x60], 0xabbd3f3
jmp 0x406aeb