Function at 0x4215b0
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 + 0x6c], ecx
mov eax, dword [0x4812c0]
xor eax, ebp
mov dword [esi + 0x90], eax
mov eax, dword [0x483020]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x48301c]
sete byte [esi + 0x1c]
cmp eax, 0xa
mov eax, 0xf1199165
setl byte [esi + 0x1d]
jmp 0x421640
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0xcf288743
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xc2c0bd45
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
nop dword [eax + eax]
cmp eax, 0x29e3c94c
jg 0x421690
cmp eax, 0xecf1e21f
jg 0x4216e0
cmp eax, 0xb64f774a
jg 0x4217a8
cmp eax, 0x95804ab3
jg 0x421934
cmp eax, 0x84cfdaed
je 0x421b7e
cmp eax, 0x94c2aa4d
jne 0x421640
mov eax, dword [esi + 0x28]
vmovsd xmm0, qword [eax]
mov eax, 0x2cfe43a6
vmovsd qword [esi + 0x80], xmm0
jmp 0x421640
cmp eax, 0x58ee7eda
jle 0x421760
cmp eax, 0x77ae6234
jg 0x4217fc
cmp eax, 0x60ff94ca
jg 0x42195f
cmp eax, 0x58ee7edb
je 0x422295
cmp eax, 0x5fd49b2e
jne 0x421640
mov eax, 0x29e3c94d
jmp 0x421640
cmp eax, 0x11048543
jg 0x4218de
cmp eax, 0xf1199164
jg 0x4219c5
cmp eax, 0xecf1e220
je 0x421c71
cmp eax, 0xed9f2017
jne 0x421640
mov eax, dword [esi + 0x78]
mov dword [esi + 8], eax
mov eax, dword [0x483040]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x48303c], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0x4b0de3cf
or cl, dl
mov ecx, 0x2088d637
mov edx, 0xb00c52c8
cmovne eax, ecx
mov ecx, 0x4b0de3cf
cmovne ecx, edx
mov edx, 0x8b2fb894
jmp 0x421cc0
cmp eax, 0x354909e0
jg 0x421909
cmp eax, 0x2cfe43a5
jg 0x421a25
cmp eax, 0x29e3c94d
je 0x421d21
cmp eax, 0x2afb926d
jne 0x421640
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x14]
mov eax, 0x31bc1e8d
jmp 0x421640
cmp eax, 0xc2c0bd44
jg 0x421a9a
cmp eax, 0xb64f774b
je 0x421d37
cmp eax, 0xc0d7b8e9
jne 0x421640
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0x2afb926d
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x31bc1e8d
jmp 0x421628
cmp eax, 0x7c21b291
jg 0x421ac2
cmp eax, 0x77ae6235
je 0x4222a7
cmp eax, 0x7b32275b
jne 0x421640
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x28], eax
push eax
mov eax, esp
mov dword [esi + 0x54], eax
push eax
mov eax, esp
mov dword [esi + 0x2c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 4], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x48], eax
push eax
mov eax, esp
mov dword [esi + 0x20], eax
push eax
mov eax, esp
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x30], eax
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
push eax
mov eax, esp
mov dword [esi + 0x44], eax
sub esp, 8
vmovsd xmm0, qword [ebp + 0x1c]
mov eax, esp
mov dword [esi + 0x58], eax
movzx ecx, byte [ebp + 0x18]
mov eax, dword [esi + 0x28]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x54]
mov byte [eax], cl
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 0x2c]
mov dword [eax], ecx
mov eax, dword [esi + 0x6c]
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 4]
call fcn.00401590
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x20]
mov eax, dword [0x483020]
mov ebx, 0x53f29a14
mov edi, 0x95804ab4
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x95804ab4
jmp 0x421a7d
cmp eax, 0x221a9cba
jg 0x421aee
cmp eax, 0x11048544
je 0x421d41
cmp eax, 0x135978e6
jne 0x421640
mov eax, 0x354909e1
jmp 0x421640
cmp eax, 0x3cc15b17
jle 0x421b40
cmp eax, 0x3cc15b18
je 0x4222f0
cmp eax, 0x53f29a14
jne 0x421640
mov eax, 0x84cfdaed
jmp 0x421640
cmp eax, 0x95804ab4
je 0x421e51
cmp eax, 0xad8d1def
jne 0x421640
mov ecx, dword [esi + 4]
call section..text
mov eax, dword [esi + 4]
mov eax, 0xe981160
jmp 0x421640
cmp eax, 0x60ff94cb
je 0x42232f
cmp eax, 0x76b7d6ac
jne 0x421640
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x50]
mov dword [eax], ecx
mov ecx, dword [esi + 0x4c]
mov dword [eax + 4], ecx
mov eax, dword [esi + 0x3c]
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 0x30]
push dword [eax]
push dword [ecx + 4]
push dword [ecx]
call fcn.00438560
add esp, 0xc
mov ecx, dword [esi + 0x3c]
mov dword [ecx], eax
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov ecx, 0x11048544
mov eax, dword [esi + 0x34]
cmp byte [eax], 0
mov eax, 0x94c2aa4d
cmove eax, ecx
jmp 0x421640
cmp eax, 0xf1199165
je 0x421e66
cmp eax, 0xe981160
jne 0x421640
mov ecx, dword [esi + 4]
call section..text
mov eax, dword [esi + 4]
mov eax, dword [0x483020]
mov edi, 0x3a718efa
mov ebx, 0xad8d1def
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0xad8d1def
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x48301c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x421640
cmp eax, 0x2cfe43a6
je 0x4215fa
cmp eax, 0x31bc1e8d
jne 0x421640
imul eax, dword [esi + 0x24], 0x7597
mov ecx, 0x14f8b589
mov ebx, 0xb64f774b
mov edi, 0x2afb926d
imul ecx
mov eax, edx
shr eax, 0x1f
sar edx, 0xd
add edx, eax
mov eax, dword [esi + 0x14]
add edx, dword [eax]
mov eax, dword [0x483020]
lea ecx, [eax + 1]
mov dword [esi + 0x7c], edx
imul ecx, eax
mov eax, 0x2afb926d
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x48301c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x421640
cmp eax, 0xc2c0bd45
je 0x421e95
cmp eax, 0xcf288743
jne 0x421640
vmovsd xmm0, qword [esi + 0x80]
mov eax, 0xc2c0bd45
jmp 0x421640
cmp eax, 0x7c21b292
je 0x422345
cmp eax, 0x7d92683d
jne 0x421640
mov eax, dword [esi + 0x3c]
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x38]
mov eax, dword [esi + 0x34]
mov eax, 0x77ae6235
jmp 0x421640
cmp eax, 0x221a9cbb
je 0x421ef4
cmp eax, 0x28fa16f4
jne 0x421640
mov eax, dword [esi + 0x40]
mov eax, dword [esi + 0x28]
vmovsd xmm0, qword [eax]
mov eax, dword [esi + 0x40]
sub esp, 0xc
mov dword [esp + 8], eax
vmovsd qword [esp], xmm0
call fcn.00442ff3
fstp st(0)
add esp, 0xc
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov ecx, eax
neg ecx
cmovs ecx, eax
mov eax, 0xc0d7b8e9
mov dword [esi + 0x24], ecx
jmp 0x421640
cmp eax, 0x354909e1
jne 0x422379
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0x135978e6
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x60ff94cb
jmp 0x421628
mov ecx, dword [0x483420]
mov edx, dword [0x48341c]
mov edi, 0x99edd610
mov ebx, 0xd67b709d
lea eax, [ecx + 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete cl
cmp edx, 0xa
setl ch
xor ch, cl
cmovne edi, ebx
cmp eax, 0xffffffff
mov eax, dword [esi + 0x2c]
mov ecx, edi
cmove ecx, ebx
mov ebx, 0xc9d2f77d
mov eax, dword [eax]
sete byte [esi + 0x18]
cmp edx, 0xa
cmovge ecx, edi
setl byte [esi + 8]
mov dword [esi + 0xc], eax
nop word cs:[eax + eax]
cmp ebx, 0xd67b709c
jg 0x421c30
cmp ebx, 0x99edd610
je 0x421c51
cmp ebx, 0xc206b0ca
je 0x421f09
cmp ebx, 0xc9d2f77d
jne 0x421be0
movzx eax, byte [esi + 0x18]
mov ah, byte [esi + 8]
mov edi, 0x99edd610
mov edx, 0x7f64774c
mov ebx, eax
xor bl, ah
cmovne edi, edx
test ah, ah
mov ebx, edi
cmovne ebx, edx
test al, al
cmove ebx, edi
jmp 0x421be0
cmp ebx, 0xd67b709d
je 0x421c58
cmp ebx, 0x78938f2a
je 0x421c5f
cmp ebx, 0x7f64774c
jne 0x421be0
mov eax, dword [esi + 0xc]
mov ebx, ecx
mov dword [esi], eax
jmp 0x421be0
mov ebx, 0x7f64774c
jmp 0x421be0
mov ebx, 0x78938f2a
jmp 0x421be0
mov eax, dword [esi]
mov ebx, 0xc206b0ca
mov eax, dword [eax + 0x14]
mov dword [esi + 0x10], eax
jmp 0x421be0
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0x354909e1
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x135978e6
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x421640
mov edx, ecx
nop dword [eax + eax]
cmp edx, 0xea8676ab
jle 0x421cf0
cmp edx, 0xea8676ac
je 0x421cb6
cmp edx, 0x2088d637
je 0x42235d
cmp edx, 0x4b0de3cf
jne 0x421cc0
mov edx, dword [esi]
mov edx, 0xb00c52c8
jmp 0x421cc0
cmp edx, 0x8b2fb894
je 0x421d12
cmp edx, 0xb00c52c8
jne 0x421cc0
mov edx, dword [esi]
vmovsd xmm0, qword [edx]
mov edx, eax
vmovsd qword [esi + 0x88], xmm0
jmp 0x421cc0
mov edx, dword [esi + 8]
add edx, 0x18
mov dword [esi], edx
mov edx, 0xea8676ac
jmp 0x421cc0
cmp byte [esi + 0x1e], 0
mov eax, 0x11048544
mov ecx, 0x28fa16f4
cmovne eax, ecx
jmp 0x421640
mov eax, 0x221a9cbb
jmp 0x421640
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov ecx, dword [esi + 4]
add eax, 0x32
push 0
push eax
call fcn.00432030
mov ecx, dword [0x483420]
mov edx, dword [0x48341c]
mov edi, 0x99edd610
mov ebx, 0xd67b709d
lea eax, [ecx - 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete cl
cmp edx, 0xa
setl ch
xor ch, cl
cmovne edi, ebx
cmp eax, 0xffffffff
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov ecx, edi
cmove ecx, ebx
mov ebx, 0xc9d2f77d
mov eax, dword [eax]
sete byte [esi + 0x18]
cmp edx, 0xa
cmovge ecx, edi
setl byte [esi + 8]
mov dword [esi + 0xc], eax
nop word cs:[eax + eax]
cmp ebx, 0xd67b709c
jg 0x421e10
cmp ebx, 0x99edd610
je 0x421e31
cmp ebx, 0xc206b0ca
je 0x421f2e
cmp ebx, 0xc9d2f77d
jne 0x421dc0
movzx eax, byte [esi + 0x18]
mov ah, byte [esi + 8]
mov edi, 0x99edd610
mov edx, 0x7f64774c
mov ebx, eax
xor bl, ah
cmovne edi, edx
test ah, ah
mov ebx, edi
cmovne ebx, edx
test al, al
cmove ebx, edi
jmp 0x421dc0
cmp ebx, 0xd67b709d
je 0x421e38
cmp ebx, 0x78938f2a
je 0x421e3f
cmp ebx, 0x7f64774c
jne 0x421dc0
mov eax, dword [esi + 0xc]
mov ebx, ecx
mov dword [esi], eax
jmp 0x421dc0
mov ebx, 0x7f64774c
jmp 0x421dc0
mov ebx, 0x78938f2a
jmp 0x421dc0
mov eax, dword [esi]
mov ebx, 0xc206b0ca
mov eax, dword [eax + 0x14]
mov dword [esi + 0x10], eax
jmp 0x421dc0
push eax
sub esp, 0x14
mov ecx, esp
call fcn.00401590
mov eax, 0x7b32275b
jmp 0x421640
movzx ecx, byte [esi + 0x1c]
movzx eax, byte [esi + 0x1d]
mov edi, 0x7b32275b
mov ebx, 0x95804ab4
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x95804ab4
cmovne eax, edi
test cl, cl
cmove eax, ebx
test dl, dl
cmovne eax, edi
jmp 0x421640
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0xcf288743
vmovsd xmm0, qword [esi + 0x80]
vandpd xmm0, xmm0, xmmword [0x45b210]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x5fd49b2e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
vucomisd xmm0, qword [0x45b220]
seta byte [esi + 0x1e]
jmp 0x421640
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x7c]
mov dword [eax], ecx
mov eax, dword [esi + 0x40]
mov eax, 0x11048544
jmp 0x421640
mov eax, dword [esi + 0x10]
mov ecx, 0x3000
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x88]
mov edx, dword [esi + 0x20]
and eax, ecx
mov dword [edx], eax
mov eax, 0x3cc15b18
jmp 0x421640
mov eax, dword [esi + 0x10]
mov dword [esi + 0x88], eax
push dword [esi + 0x88]
push 0
push dword [esi + 0x48]
push dword [esi + 0x5c]
call fcn.004326d0
add esp, 0x10
mov dword [esi + 0x70], eax
mov edx, 0x5e0d299b
mov edi, 0xe128e180
mov eax, dword [esi + 4]
mov dword [esi + 0x10], eax
mov eax, dword [0x483030]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x48302c]
sete cl
sete byte [esi + 0x1f]
cmp eax, 0xa
setl al
setl byte [esi + 0x18]
or al, cl
mov ecx, 0xa3d99010
mov eax, 0x462455ae
cmovne ecx, eax
mov eax, 0xa3d99010
cmovne eax, edx
mov edx, 0x72fc97
mov dword [esi + 0xc], ecx
cmovne edx, edi
mov dword [esi + 0x74], edx
mov edx, 0xd3c33a64
jmp 0x421fc0
mov ecx, dword [esi]
mov edx, 0x5e0d299b
nop dword [eax + eax]
mov edi, edx
cmp edx, 0xe128e17f
jle 0x422000
cmp edi, 0x462455ad
jle 0x422030
cmp edi, 0x5e0d299b
je 0x422094
mov edx, eax
cmp edi, 0x735b9b4e
je 0x421fc0
mov edx, edi
cmp edi, 0x462455ae
jne 0x421fc0
jmp 0x4220be
cmp edi, 0xa3d9900f
jg 0x422050
cmp edi, 0x89bd850a
je 0x4220a6
mov edx, edi
cmp edi, 0x9276b596
jne 0x421fc0
mov ecx, dword [esi + 8]
mov edx, 0x735b9b4e
add ecx, 0x10
mov dword [esi], ecx
jmp 0x421fc0
cmp edi, 0xe128e180
je 0x4220b4
mov edx, edi
cmp edi, 0x72fc97
jne 0x421fc0
mov edx, 0x89bd850a
jmp 0x421fc0
cmp edi, 0xa3d99010
je 0x421fb4
mov edx, edi
cmp edi, 0xd3c33a64
jne 0x421fc0
movzx ecx, byte [esi + 0x1f]
movzx edx, byte [esi + 0x18]
mov edi, 0x72fc97
mov ebx, 0x89bd850a
mov ch, cl
xor ch, dl
cmovne edi, ebx
test dl, dl
mov edx, edi
cmovne edx, ebx
test cl, cl
cmove edx, edi
jmp 0x421fc0
mov ecx, dword [esi]
mov edx, dword [esi + 0xc]
mov ecx, dword [ecx]
mov dword [esi + 0x88], ecx
jmp 0x421fc0
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x74]
mov dword [esi + 8], ecx
jmp 0x421fc0
mov edx, 0x9276b596
jmp 0x421fc0
mov eax, dword [esi + 0x88]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x18], eax
mov eax, 0x69b83ebf
nop word cs:[eax + eax]
cmp eax, 0xec9bea87
jle 0x422120
cmp eax, 0xec9bea88
je 0x422137
cmp eax, 0x4b4144ff
je 0x422182
cmp eax, 0x69b83ebf
jne 0x4220e0
mov ecx, dword [esi + 0x18]
call fcn.00418270
mov dword [esi + 8], eax
mov dword [esi], 0
mov eax, 0x4b4144ff
jmp 0x4220e0
cmp eax, 0xbaaab398
je 0x4221c5
cmp eax, 0xc2b229b6
jne 0x4220e0
jmp 0x4221d4
mov edx, dword [0x483028]
mov ecx, dword [0x483024]
mov edi, 0xbaaab398
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xc2b229b6
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 8]
cmovge eax, edi
add ecx, dword [esi]
mov dword [esi + 0xc], ecx
jmp 0x4220e0
mov edx, dword [0x483028]
mov edi, dword [0x483024]
mov ecx, 0xec9bea88
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp edi, 0xa
setl bh
xor bh, bl
mov ebx, 0xbaaab398
cmovne ebx, ecx
test edx, eax
mov eax, ebx
cmove eax, ecx
cmp edi, 0xa
cmovge eax, ebx
jmp 0x4220e0
mov eax, dword [esi + 8]
mov eax, dword [esi]
mov eax, 0xec9bea88
jmp 0x4220e0
mov eax, dword [esi + 0xc]
lea ecx, [esi + 0x8c]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x88]
mov edx, dword [esi + 0x70]
mov dword [esi + 0x88], edx
push ecx
push 0
push edx
push dword [esi + 0x10]
push eax
call fcn.00430de0
add esp, 0x14
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov eax, dword [esi + 0x28]
vmovsd xmm0, qword [eax]
sub esp, 8
vmovsd qword [esp], xmm0
call fcn.00438bc0
add esp, 8
mov byte [esi + 0x10], al
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 4]
call fcn.00419fc0
mov ecx, dword [esi + 0x54]
mov edi, eax
lea eax, [ebp + 0xc]
movsx edx, byte [ecx]
mov ecx, dword [esi + 0x2c]
mov ebx, dword [ecx]
mov ecx, dword [esi + 0x58]
vmovsd xmm0, qword [eax]
vmovsd qword [ecx], xmm0
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x5c]
sub esp, 0x20
vmovsd xmm0, qword [eax]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x10], edx
mov edx, dword [ebp + 8]
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], ebx
movzx eax, byte [esi + 0x10]
mov dword [esp], edx
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x18], eax
call fcn.00433d70
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x14]
mov eax, 0x7d92683d
jmp 0x421640
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [esi + 0x78], eax
mov eax, 0xed9f2017
jmp 0x421640
mov edx, dword [0x483020]
mov ecx, dword [0x48301c]
mov edi, 0xad8d1def
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xe981160
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x20]
mov ecx, dword [esi + 0x48]
cmovge eax, edi
jmp 0x421640
mov eax, dword [esi + 0x34]
mov eax, dword [esi + 0x20]
mov ecx, 0x58ee7edb
cmp dword [eax], 0x2000
mov eax, dword [esi + 0x34]
sete byte [eax]
mov eax, dword [esi + 0x38]
mov eax, dword [esi + 0x20]
cmp dword [eax], 0x3000
mov eax, dword [esi + 0x38]
sete byte [eax]
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x38]
cmp byte [eax], 0
mov eax, 0x7c21b292
cmove eax, ecx
jmp 0x421640
mov eax, dword [esi + 0x60]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x64]
mov dword [esi + 0x4c], eax
mov eax, 0x76b7d6ac
jmp 0x421640
mov dword [esi + 0x50], 0xffffffff
mov eax, 0x76b7d6ac
mov dword [esi + 0x4c], 0xffffffff
jmp 0x421640
mov eax, dword [esi + 0x88]
mov ecx, dword [esi + 0x8c]
mov dword [esi + 0x60], eax
mov dword [esi + 0x64], ecx
mov eax, 0xecf1e220
jmp 0x421640
cmp eax, 0x3a718efa
jne 0x421640
mov ecx, dword [esi + 0x90]
xor ecx, ebp
call fcn.0043c310
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c