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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb8
mov esi, esp
mov dword [esi + 0x94], ecx
movzx eax, byte [ebp + 0x1c]
mov edx, 0x3b8d2960
mov ecx, dword [0x47e2c0]
xor ecx, ebp
test al, al
movzx eax, al
mov dword [esi + 0xb0], ecx
mov dword [esi + 0x8c], eax
mov eax, dword [ebp + 0x14]
mov ecx, 0xc39bddad
cmovne edx, ecx
mov dword [esi + 0x90], edx
add eax, 0x14
mov dword [esi + 0x5c], eax
mov eax, 0x9d984de9
jmp 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0x9e29fbc3
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, 0x4b6ee91
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
nop word [eax + eax]
cmp eax, 0x1d5858f
jle 0x421ee0
cmp eax, 0x4e7a059a
jle 0x422070
cmp eax, 0x704a2cac
jle 0x42220d
cmp eax, 0x7701cb6b
jg 0x4223d6
cmp eax, 0x74f5e655
jg 0x422b0f
cmp eax, 0x704a2cad
je 0x422f5f
cmp eax, 0x7308e2f9
jne 0x421d70
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x78]
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
mov ebx, dword [esi + 0x14]
mov eax, 0x7d39a130
nop dword [eax]
cmp eax, 0x9fedcf6
jle 0x421e40
cmp eax, 0x9fedcf7
je 0x421eaf
cmp eax, 0x477bcf9f
je 0x422f69
cmp eax, 0x7d39a130
jne 0x421dd0
mov edx, dword [0x480410]
mov ecx, dword [0x48040c]
mov edi, 0x510de85
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, 0x8c15b37a
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x421dd0
cmp eax, 0x8c15b37a
je 0x421eb9
cmp eax, 0x510de85
jne 0x421dd0
mov dword [esi + 8], ebx
mov ecx, dword [esi + 8]
sub esp, 4
movzx eax, byte [esi + 0xac]
mov byte [esp], al
call fcn.0040b490
mov edx, dword [0x480410]
mov ecx, dword [0x48040c]
mov dword [esi + 4], ebx
mov edi, 0x9fedcf7
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, 0x8c15b37a
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
mov ebx, dword [esi + 4]
jmp 0x421dd0
mov eax, 0x477bcf9f
jmp 0x421dd0
sub esp, 4
movzx eax, byte [esi + 0xac]
mov ecx, ebx
mov byte [esp], al
call fcn.0040b490
mov eax, 0x510de85
jmp 0x421dd0
cmp eax, 0xd89eb250
jg 0x422120
cmp eax, 0xb06e6b1f
jle 0x42228a
cmp eax, 0xb7131aed
jg 0x42240d
cmp eax, 0xb3d3cd1a
jg 0x422b88
cmp eax, 0xb06e6b20
je 0x422f8b
cmp eax, 0xb3c0aaf3
jne 0x421d70
mov eax, dword [0x4803c0]
mov edi, 0x5f2dec0
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x4803bc], 0xa
setl cl
or cl, al
mov ecx, 0x1c3a6a4d
mov eax, 0xb2f12282
cmovne ecx, eax
mov eax, 0x2587090
mov dword [esi + 0x28], ecx
mov ecx, 0x1c3a6a4d
cmovne ecx, eax
mov eax, 0x5e31cac3
mov dword [esi + 0x10], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, 0xa63181d
mov dword [esi + 0x3c], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x2c], ecx
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], ecx
jmp 0x421fc5
cmp edx, 0x363b40f5
je 0x42205e
mov ebx, ecx
mov dword [esi + 4], eax
mov edi, edx
cmp edx, 0x5e31cac3
jne 0x421fc5
mov edi, 0xab4f5b8
mov eax, dword [esi + 4]
mov ebx, ecx
mov edx, edi
mov ecx, ebx
cmp edi, 0xab4f5b7
jle 0x422000
cmp edx, 0x363b40f4
jg 0x421fa0
mov edi, dword [esi + 0x10]
mov ebx, ecx
mov dword [esi + 4], eax
cmp edx, 0xab4f5b8
je 0x421fc5
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0x1c3a6a4d
jne 0x421fc5
mov edi, 0x2587090
jmp 0x421fc0
mov dword [esi + 4], eax
cmp edx, 0x5f2debf
jle 0x422031
mov edi, dword [esi + 0x2c]
mov ebx, ecx
cmp edx, 0x5f2dec0
je 0x421fc5
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0xa63181d
jne 0x421fc5
mov eax, dword [esi + 4]
mov edi, dword [esi + 0x3c]
mov ebx, ecx
jmp 0x421fc5
mov ebx, dword [esi + 0x44]
mov eax, dword [esi + 0x40]
mov edi, dword [esi + 0x28]
cmp edx, 0x2587090
je 0x421fc5
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0xb2f12282
jne 0x421fc5
jmp 0x42303f
mov edi, 0xa63181d
mov ebx, ecx
jmp 0x421fc5
cmp eax, 0x21c97846
jg 0x4222d4
cmp eax, 0xb5042c2
jle 0x4225ff
cmp eax, 0x17ffcb39
jg 0x422ba8
cmp eax, 0xb5042c3
je 0x423058
cmp eax, 0x17fd5636
jne 0x421d70
lea ebx, [ebp + 0xc]
mov eax, dword [esi + 0x54]
vmovsd xmm0, qword [ebx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x54]
mov edx, dword [esi + 0x24]
mov edi, dword [esi + 0x7c]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
movsx ecx, byte [ebp + 0x18]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004288c0
add esp, 0x18
mov eax, dword [esi + 0x30]
mov edi, 0x7701cb6c
vmovsd xmm0, qword [eax]
vmovsd qword [ebx], xmm0
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
lea eax, [edx + 1]
jmp 0x422c3b
cmp eax, 0xe97e96a1
jg 0x42239f
cmp eax, 0xe322a7cc
jle 0x422729
cmp eax, 0xe7ca32ae
jg 0x422c11
cmp eax, 0xe322a7cd
je 0x42313f
cmp eax, 0xe447c3fe
jne 0x421d70
mov eax, dword [esi + 0x5c]
mov dword [esi + 0xac], eax
mov eax, dword [0x4803b8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x4803b4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xd28c666e
or cl, dl
mov ecx, 0x88b16ae6
mov edx, 0xe5b4f7e8
cmovne eax, ecx
mov ecx, 0xd28c666e
cmovne ecx, edx
mov edx, 0x1186300d
nop dword [eax]
cmp edx, 0xd28c666d
jle 0x4221e0
cmp edx, 0xd28c666e
je 0x4221f5
cmp edx, 0x1186300d
je 0x422202
cmp edx, 0xe5b4f7e8
jne 0x4221b0
mov edx, dword [esi + 0xac]
mov edx, dword [edx]
mov dword [esi + 8], edx
mov edx, eax
jmp 0x4221b0
cmp edx, 0x88b16ae6
je 0x422206
cmp edx, 0xc6638f21
jne 0x4221b0
jmp 0x423231
mov edx, dword [esi + 0xac]
mov edx, 0xe5b4f7e8
jmp 0x4221b0
mov edx, ecx
jmp 0x4221b0
mov edx, 0xc6638f21
jmp 0x4221b0
cmp eax, 0x640133fc
jle 0x42275a
cmp eax, 0x6e87f866
jg 0x422c5b
cmp eax, 0x640133fd
je 0x423244
cmp eax, 0x65e0aae6
jne 0x421d70
lea ecx, [ebp + 0xc]
mov eax, dword [esi + 0x50]
vmovsd xmm0, qword [ecx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
mov edx, dword [esi + 0x50]
mov ecx, dword [esi + 0x24]
mov edi, dword [esi + 0x74]
movsx ebx, byte [esi + 0x1b]
sub esp, 0x18
vmovsd xmm0, qword [edx]
mov edx, dword [ebp + 0x14]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x14], edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], edx
mov dword [esp], edi
call eax
mov eax, 0x7b4d1e55
jmp 0x421d70
cmp eax, 0x9e29fbc2
jle 0x422934
cmp eax, 0xa3dcf343
jg 0x422c90
cmp eax, 0x9e29fbc3
je 0x42326c
cmp eax, 0xa333299b
jne 0x421d70
mov eax, dword [esi + 0xa0]
mov ecx, 0x7be1ca26
cmp eax, dword [esi + 0xa4]
mov eax, 0xf42a4de6
cmova eax, ecx
jmp 0x421d70
cmp eax, 0x3b8d295f
jle 0x4229b2
cmp eax, 0x41ee34e4
jg 0x422cda
cmp eax, 0x3b8d2960
je 0x42333a
cmp eax, 0x3baf6115
jne 0x421d70
mov eax, dword [esi + 0x58]
mov eax, dword [esi + 0x14]
mov ecx, dword [0x47ffd0]
mov edi, 0x9bedf401
lea edx, [ecx + 1]
add eax, 0x10
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x47ffcc], 0xa
setl dl
or dl, cl
mov ecx, 0x423c6ab0
mov edx, 0x864cfd82
cmovne ecx, edx
mov edx, 0x423c6ab0
cmovne edx, edi
mov edi, 0xd594a0f9
nop word [eax + eax]
cmp edi, 0xd594a0f8
jle 0x422380
cmp edi, 0xd594a0f9
je 0x422394
cmp edi, 0x26e23e49
je 0x423347
cmp edi, 0x423c6ab0
jne 0x422350
mov edi, 0x9bedf401
jmp 0x422350
cmp edi, 0x864cfd82
je 0x422398
cmp edi, 0x9bedf401
jne 0x422350
mov edi, ecx
jmp 0x422350
mov edi, edx
jmp 0x422350
mov edi, 0x26e23e49
jmp 0x422350
cmp eax, 0xf42a4de5
jle 0x422ad9
cmp eax, 0xf8e3b48f
jg 0x422df6
cmp eax, 0xf42a4de6
je 0x423386
cmp eax, 0xf8e129a8
jne 0x421d70
mov eax, dword [esi + 0x90]
jmp 0x421d70
cmp eax, 0x7b4d1e54
jg 0x422edd
cmp eax, 0x7701cb6c
je 0x4233ac
cmp eax, 0x77731fbc
jne 0x421d70
cmp byte [esi + 0x37], 0
mov eax, 0xb3d3cd1b
mov ecx, 0xf42a4de6
cmovne eax, ecx
jmp 0x421d70
cmp eax, 0xc3ecd6a8
jle 0x422f12
cmp eax, 0xc3ecd6a9
je 0x4233b6
cmp eax, 0xce17c112
jne 0x421d70
mov eax, dword [esi + 0x9c]
mov ecx, dword [0x4803c0]
mov ebx, 0x1c3a6a4d
mov edi, 0x363b40f5
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x4803bc], 0xa
setl dl
or dl, cl
mov edx, 0x1c3a6a4d
mov ecx, 0xb2f12282
cmovne edx, ecx
mov ecx, 0x2587090
mov dword [esi + 4], edx
cmovne ebx, ecx
mov edx, 0x363b40f5
mov ecx, 0x5e31cac3
cmovne edx, ecx
mov ecx, 0xa63181d
mov dword [esi + 0x10], edx
cmovne edi, ecx
mov edx, 0x5f2dec0
jmp 0x4224a0
mov edx, 0xa63181d
nop dword [eax]
mov ecx, edx
cmp edx, 0xab4f5b7
jle 0x4224d0
cmp ecx, 0x363b40f4
jg 0x422500
mov edx, ebx
cmp ecx, 0xab4f5b8
je 0x4224a0
mov edx, ecx
cmp ecx, 0x1c3a6a4d
jne 0x4224a0
mov edx, 0x2587090
jmp 0x4224a0
cmp ecx, 0x5f2debf
jle 0x422519
mov edx, edi
cmp ecx, 0x5f2dec0
je 0x4224a0
mov edx, ecx
cmp ecx, 0xa63181d
jne 0x4224a0
mov edx, dword [esi + 0x10]
jmp 0x4224a0
cmp ecx, 0x363b40f5
je 0x422497
mov edx, ecx
cmp ecx, 0x5e31cac3
jne 0x4224a0
mov edx, 0xab4f5b8
jmp 0x4224a0
cmp ecx, 0x2587090
jne 0x422535
mov edx, dword [eax + 0x24]
mov ecx, dword [eax + 0x20]
mov dword [esi + 0x28], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x2c], ecx
jmp 0x4224a0
mov edx, ecx
cmp ecx, 0xb2f12282
jne 0x4224a0
mov eax, dword [esi + 0x28]
mov edi, 0x9bedf401
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x2c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 0x14]
mov ecx, dword [0x47ffd0]
lea edx, [ecx + 1]
add eax, 0x10
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete dl
cmp dword [0x47ffcc], 0xa
setge ch
setl dh
or ch, cl
xor dh, dl
xor ch, 1
or ch, dh
mov ecx, 0x423c6ab0
mov edx, 0x864cfd82
cmovne ecx, edx
mov edx, 0x423c6ab0
cmovne edx, edi
mov edi, 0xd594a0f9
nop
cmp edi, 0xd594a0f8
jle 0x4225e0
cmp edi, 0xd594a0f9
je 0x4225f4
cmp edi, 0x26e23e49
je 0x4233d5
cmp edi, 0x423c6ab0
jne 0x4225b0
mov edi, 0x9bedf401
jmp 0x4225b0
cmp edi, 0x864cfd82
je 0x4225f8
cmp edi, 0x9bedf401
jne 0x4225b0
mov edi, ecx
jmp 0x4225b0
mov edi, edx
jmp 0x4225b0
mov edi, 0x26e23e49
jmp 0x4225b0
cmp eax, 0x1d58590
je 0x4233ed
cmp eax, 0x3dc34c4
je 0x42345d
cmp eax, 0x4b6ee91
jne 0x421d70
mov ebx, dword [esi + 0x20]
mov ecx, ebx
call fcn.00409b70
mov eax, 0xe5a891ad
mov dword [esi + 8], ebx
nop word cs:[eax + eax]
cmp eax, 0x4ac293fe
jle 0x422670
cmp eax, 0x4ac293ff
je 0x4226c7
cmp eax, 0x525292ae
je 0x4226d9
cmp eax, 0x5e3802fb
jne 0x422640
jmp 0x423467
cmp eax, 0xb4bdb2ff
je 0x42271f
cmp eax, 0xe5a891ad
jne 0x422640
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0x525292ae
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, 0x4ac293ff
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x422640
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, 0x525292ae
jmp 0x422640
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, dword [0x480420]
mov ebx, 0xb4bdb2ff
mov edi, 0x4ac293ff
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4ac293ff
sete cl
cmove eax, ebx
cmp dword [0x48041c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x422640
mov eax, 0x5e3802fb
jmp 0x422640
cmp eax, 0xd89eb251
je 0x423474
cmp eax, 0xdec316fa
je 0x42347e
cmp eax, 0xe07230a5
jne 0x421d70
mov eax, dword [esi + 0x60]
mov eax, dword [esi + 0x64]
mov eax, 0x1f4316d3
jmp 0x421d70
cmp eax, 0x4e7a059b
je 0x4235a7
cmp eax, 0x4ff9ab64
je 0x4235b8
cmp eax, 0x521f60b2
jne 0x421d70
mov eax, dword [0x4803c0]
mov edi, 0x5f2dec0
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4803bc], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xb2f12282
or cl, dl
mov ecx, 0x1c3a6a4d
cmovne ecx, eax
mov eax, 0x2587090
mov dword [esi + 0x44], ecx
mov ecx, 0x1c3a6a4d
cmovne ecx, eax
mov eax, 0x5e31cac3
mov dword [esi + 0x2c], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, 0xa63181d
mov dword [esi + 0x98], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x28], ecx
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], eax
jmp 0x422810
mov edi, 0xa63181d
nop word cs:[eax + eax]
mov eax, edi
cmp edi, 0xab4f5b7
jle 0x422850
cmp eax, 0x363b40f4
jg 0x422880
mov edi, dword [esi + 0x2c]
mov dword [esi + 0x10], ebx
cmp eax, 0xab4f5b8
je 0x422810
mov ebx, dword [esi + 0x10]
mov ecx, edx
mov edi, eax
cmp eax, 0x1c3a6a4d
jne 0x422810
mov ebx, dword [esi + 0x10]
mov edi, 0x2587090
mov edx, ecx
jmp 0x422810
mov dword [esi + 4], edx
cmp eax, 0x5f2debf
jle 0x4228aa
mov edi, dword [esi + 0x28]
cmp eax, 0x5f2dec0
je 0x422810
mov edx, dword [esi + 4]
mov ecx, ebx
mov edi, eax
cmp eax, 0xa63181d
jne 0x422810
mov edx, dword [esi + 4]
mov edi, dword [esi + 0x98]
mov ebx, ecx
jmp 0x422810
cmp eax, 0x363b40f5
je 0x4227ff
mov dword [esi + 4], edx
mov edi, eax
cmp eax, 0x5e31cac3
jne 0x422810
mov edx, dword [esi + 4]
mov ecx, ebx
mov edi, 0xab4f5b8
jmp 0x422810
mov ecx, ebx
mov edx, dword [esi + 0x40]
mov ebx, dword [esi + 0x3c]
mov edi, dword [esi + 0x44]
cmp eax, 0x2587090
je 0x422810
mov edx, dword [esi + 4]
mov ebx, ecx
mov edi, eax
cmp eax, 0xb2f12282
jne 0x422810
mov edx, dword [0x47ff98]
mov ebx, dword [0x47ff94]
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 4]
lea eax, [edx + 1]
mov dword [esi + 0x10], ebx
mov dword [esi + 8], ecx
imul eax, edx
mov edi, eax
xor edi, 0xfffffffe
test edi, eax
sete dl
cmp ebx, 0xa
mov ebx, 0xd89eb251
setl dh
xor dh, dl
mov edx, 0xb3c0aaf3
cmovne edx, ebx
test edi, eax
mov eax, edx
cmove eax, ebx
cmp dword [esi + 0x10], 0xa
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
mov dword [esi + 0x80], edi
mov dword [esi + 0x84], ecx
cmovge eax, edx
jmp 0x421d70
cmp eax, 0x8b253e47
je 0x4235de
cmp eax, 0x98b7cd5c
je 0x4235e8
cmp eax, 0x9d984de9
jne 0x421d70
push eax
push eax
mov eax, esp
mov dword [esi + 0x50], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x48], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x14], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x20], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x4c], eax
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x54], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x58], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x6c], eax
mov eax, 0xe7ca32af
jmp 0x421d70
cmp eax, 0x21c97847
je 0x42369d
cmp eax, 0x279ac03d
je 0x4236a7
cmp eax, 0x2a91eca9
jne 0x421d70
mov ebx, dword [esi + 0x14]
mov ecx, ebx
call fcn.00409b70
mov eax, 0xe5a891ad
mov dword [esi + 8], ebx
nop word cs:[eax + eax]
cmp eax, 0x4ac293fe
jle 0x422a20
cmp eax, 0x4ac293ff
je 0x422a77
cmp eax, 0x525292ae
je 0x422a89
cmp eax, 0x5e3802fb
jne 0x4229f0
jmp 0x4236c9
cmp eax, 0xb4bdb2ff
je 0x422acf
cmp eax, 0xe5a891ad
jne 0x4229f0
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0x525292ae
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, 0x4ac293ff
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4229f0
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, 0x525292ae
jmp 0x4229f0
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, dword [0x480420]
mov ebx, 0xb4bdb2ff
mov edi, 0x4ac293ff
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4ac293ff
sete cl
cmove eax, ebx
cmp dword [0x48041c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x4229f0
mov eax, 0x5e3802fb
jmp 0x4229f0
cmp eax, 0xe97e96a2
je 0x4236d9
cmp eax, 0xe9bd1ac0
je 0x42382a
cmp eax, 0xf228a306
jne 0x421d70
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x1c]
mov eax, dword [eax]
mov dword [esi + 0x7c], eax
mov eax, 0xe86a7ddf
jmp 0x421d70
cmp eax, 0x74f5e656
je 0x423840
cmp eax, 0x76cccf69
jne 0x421d70
lea ebx, [ebp + 0xc]
mov eax, dword [esi + 0x54]
vmovsd xmm0, qword [ebx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x54]
mov edx, dword [esi + 0x24]
mov edi, dword [esi + 0x7c]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
movsx ecx, byte [ebp + 0x18]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004288c0
add esp, 0x18
mov eax, dword [esi + 0x30]
vmovsd xmm0, qword [eax]
vmovsd qword [ebx], xmm0
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
mov eax, 0x17fd5636
jmp 0x421d70
cmp eax, 0xb3d3cd1b
je 0x42384a
cmp eax, 0xb3deb38e
jne 0x421d70
mov eax, 0xb7131aee
jmp 0x421d70
cmp eax, 0x17ffcb3a
je 0x42385d
cmp eax, 0x1f4316d3
jne 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0xe07230a5
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, 0x8b253e47
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
mov edi, dword [esi + 0x60]
mov edx, dword [esi + 0x64]
cmp edi, 1
sbb edx, 0
setl byte [esi + 0x37]
jmp 0x421d70
cmp eax, 0xe7ca32af
je 0x423874
cmp eax, 0xe86a7ddf
jne 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0x17fd5636
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, 0x76cccf69
jmp 0x421d56
cmp eax, 0x6e87f867
je 0x4238b3
cmp eax, 0x6f38ba16
jne 0x421d70
mov eax, dword [0x47ff98]
mov ebx, 0x4a68e380
mov edi, 0xe322a7cd
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xe322a7cd
jmp 0x423b5b
cmp eax, 0xa3dcf344
je 0x4238c6
cmp eax, 0xaf9336a9
jne 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0x7b4d1e55
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, 0x65e0aae6
jmp 0x421d56
cmp eax, 0x41ee34e5
je 0x421d27
cmp eax, 0x4a68e380
jne 0x421d70
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x20]
mov dword [esi + 0x10], eax
mov eax, 0xb35145af
nop word cs:[eax + eax]
cmp eax, 0xeafc39da
jle 0x422d80
cmp eax, 0xeafc39db
je 0x4238d0
cmp eax, 0xca9ae06
je 0x422d98
cmp eax, 0x164c65da
jne 0x422d10
mov edx, dword [0x47ff90]
mov ecx, dword [0x47ff8c]
mov edi, 0xeafc39db
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, 0xbff4133a
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x422d10
cmp eax, 0xb35145af
je 0x422ddb
cmp eax, 0xbff4133a
jne 0x422d10
mov eax, 0x164c65da
jmp 0x422d10
mov edx, dword [0x47ff90]
mov ecx, dword [0x47ff8c]
mov edi, 0x164c65da
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, 0xbff4133a
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x422d10
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov ecx, dword [esi + 8]
push dword [esi + 0x10]
call fcn.00437830
mov eax, 0xca9ae06
jmp 0x422d10
cmp eax, 0xf8e3b490
je 0x423916
cmp eax, 0xab3f01
jne 0x421d70
push eax
push eax
mov eax, esp
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x5c]
mov dword [esi + 0xac], eax
mov eax, dword [0x4803b8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x4803b4], 0xa
setge dl
setl ah
or dl, al
xor ah, cl
mov ecx, 0x88b16ae6
xor dl, 1
or dl, ah
mov eax, 0xd28c666e
mov edx, 0xe5b4f7e8
cmovne eax, ecx
mov ecx, 0xd28c666e
cmovne ecx, edx
mov edx, 0x1186300d
nop word cs:[eax + eax]
cmp edx, 0xd28c666d
jle 0x422eb0
cmp edx, 0xd28c666e
je 0x422ec5
cmp edx, 0x1186300d
je 0x422ed2
cmp edx, 0xe5b4f7e8
jne 0x422e80
mov edx, dword [esi + 0xac]
mov edx, dword [edx]
mov dword [esi + 8], edx
mov edx, eax
jmp 0x422e80
cmp edx, 0x88b16ae6
je 0x422ed6
cmp edx, 0xc6638f21
jne 0x422e80
jmp 0x423929
mov edx, dword [esi + 0xac]
mov edx, 0xe5b4f7e8
jmp 0x422e80
mov edx, ecx
jmp 0x422e80
mov edx, 0xc6638f21
jmp 0x422e80
cmp eax, 0x7b4d1e55
je 0x423959
cmp eax, 0x7be1ca26
jne 0x421d70
mov eax, dword [0x47ff98]
mov ebx, 0x521f60b2
mov edi, 0xb3c0aaf3
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xb3c0aaf3
jmp 0x423b5b
cmp eax, 0xc39bddad
jne 0x423c81
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x38]
mov edx, 0x83354fa2
mov ecx, dword [eax]
mov eax, dword [esi + 0x20]
nop dword [eax]
cmp edx, 0xe20c911c
je 0x4239bf
cmp edx, 0x83354fa2
jne 0x422f30
mov dword [esi + 0xac], ecx
mov edx, dword [esi + 0xac]
mov edx, dword [edx]
mov edx, dword [edx + 0x1c]
mov dword [esi + 8], edx
mov edx, 0xe20c911c
jmp 0x422f30
mov eax, 0xf8e129a8
jmp 0x421d70
mov ecx, dword [esi + 8]
push 0x473906
call fcn.0040f5c0
mov ecx, dword [esi + 8]
call fcn.0040f620
mov eax, dword [esi + 8]
mov eax, 0xdec316fa
jmp 0x421d70
mov eax, dword [esi + 0x80]
mov ecx, dword [esi + 0x84]
mov ecx, dword [esi + 0x14]
mov edx, dword [0x47ffd0]
lea edi, [edx + 1]
add ecx, 0x10
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
mov edi, 0x864cfd82
setne dl
cmp dword [0x47ffcc], 0xa
setge dh
mov bl, dh
or dh, dl
xor bl, dl
xor dh, 1
or dh, bl
mov edx, 0x423c6ab0
mov ebx, 0x9bedf401
cmovne edx, edi
mov edi, 0x423c6ab0
cmovne edi, ebx
mov ebx, 0xd594a0f9
nop word [eax + eax]
cmp ebx, 0xd594a0f8
jle 0x423020
cmp ebx, 0xd594a0f9
je 0x423034
cmp ebx, 0x26e23e49
je 0x4239d5
cmp ebx, 0x423c6ab0
jne 0x422ff0
mov ebx, 0x9bedf401
jmp 0x422ff0
cmp ebx, 0x864cfd82
je 0x423038
cmp ebx, 0x9bedf401
jne 0x422ff0
mov ebx, edx
jmp 0x422ff0
mov ebx, edi
jmp 0x422ff0
mov ebx, 0x26e23e49
jmp 0x422ff0
mov eax, dword [esi + 4]
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
mov eax, dword [esi + 0xc]
mov eax, 0x521f60b2
jmp 0x421d70
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x10], eax
mov eax, 0xb35145af
nop dword [eax]
cmp eax, 0xeafc39da
jle 0x4230d0
cmp eax, 0xeafc39db
je 0x4239ec
cmp eax, 0xca9ae06
je 0x4230e5
cmp eax, 0x164c65da
jne 0x423070
mov edx, dword [0x47ff90]
mov ecx, dword [0x47ff8c]
mov edi, 0xeafc39db
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, 0xbff4133a
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x423070
cmp eax, 0xb35145af
je 0x423124
cmp eax, 0xbff4133a
jne 0x423070
mov eax, 0x164c65da
jmp 0x423070
mov eax, dword [0x47ff90]
mov ebx, 0x164c65da
mov edi, 0xbff4133a
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xbff4133a
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x47ff8c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x423070
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov ecx, dword [esi + 8]
push dword [esi + 0x10]
call fcn.00437830
mov eax, 0xca9ae06
jmp 0x423070
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x20]
mov dword [esi + 0x10], eax
mov eax, 0xb35145af
cmp eax, 0xeafc39da
jle 0x4231c0
cmp eax, 0xeafc39db
je 0x423a06
cmp eax, 0xca9ae06
je 0x4231d8
cmp eax, 0x164c65da
jne 0x423150
mov edx, dword [0x47ff90]
mov ecx, dword [0x47ff8c]
mov edi, 0xeafc39db
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, 0xbff4133a
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x423150
cmp eax, 0xb35145af
je 0x423216
cmp eax, 0xbff4133a
jne 0x423150
mov eax, 0x164c65da
jmp 0x423150
mov eax, dword [0x47ff90]
mov edi, 0x164c65da
mov ebx, 0xbff4133a
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xbff4133a
sete cl
cmove eax, edi
cmp dword [0x47ff8c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x423150
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov ecx, dword [esi + 8]
push dword [esi + 0x10]
call fcn.00437830
mov eax, 0xca9ae06
jmp 0x423150
mov eax, dword [esi + 8]
mov dword [esi + 0xa8], eax
mov eax, 0x279ac03d
jmp 0x421d70
mov eax, dword [esi + 0x1c]
mov ebx, 0xa3dcf344
mov edi, 0x6e87f867
mov dword [eax], 0
mov eax, dword [0x47ff98]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0x6e87f867
jmp 0x423b5b
mov ebx, dword [esi + 0x20]
mov ecx, ebx
call fcn.00409b70
mov eax, 0xe5a891ad
mov dword [esi + 8], ebx
nop
cmp eax, 0x4ac293fe
jle 0x4232b0
cmp eax, 0x4ac293ff
je 0x4232d4
cmp eax, 0x525292ae
je 0x4232e3
cmp eax, 0x5e3802fb
jne 0x423280
jmp 0x423a13
cmp eax, 0xb4bdb2ff
je 0x423330
cmp eax, 0xe5a891ad
jne 0x423280
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0x525292ae
lea eax, [edx + 1]
jmp 0x4232ff
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, 0x525292ae
jmp 0x423280
mov ecx, dword [esi + 8]
call fcn.0040a210
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0xb4bdb2ff
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, 0x4ac293ff
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x423280
mov eax, 0x5e3802fb
jmp 0x423280
mov eax, dword [esi + 0x4c]
mov eax, 0x17ffcb3a
jmp 0x421d70
mov dword [esi + 8], eax
mov ecx, 0x288e067e
mov eax, dword [esi + 8]
mov edi, dword [eax]
mov eax, dword [esi + 0x14]
mov dword [esi + 0xac], eax
nop dword [eax]
cmp ecx, 0x9f6e86ec
je 0x423a5b
cmp ecx, 0x288e067e
jne 0x423360
mov ecx, dword [esi + 0xac]
call fcn.0040f800
mov ecx, 0x9f6e86ec
jmp 0x423360
mov eax, dword [0x47ff98]
mov edi, 0x640133fd
mov ebx, 0x6e87f867
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x6e87f867
jmp 0x423896
mov eax, 0x3baf6115
jmp 0x421d70
mov eax, dword [0x47ff98]
mov edi, 0xdec316fa
mov ebx, 0x7308e2f9
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x7308e2f9
jmp 0x42388e
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov dword [esi + 0xa4], eax
mov eax, 0xa333299b
jmp 0x421d70
mov eax, dword [esi + 0x38]
mov eax, dword [esi + 0x48]
mov edi, dword [esi + 0x48]
mov eax, 0xd89480c5
nop dword [eax + eax]
cmp eax, 0xada75f1f
je 0x423b06
cmp eax, 0xd89480c5
jne 0x423400
mov eax, dword [ebp + 0x14]
mov ecx, 0x2b46e6b0
mov eax, dword [eax + 0x30]
nop dword [eax]
cmp ecx, 0x2b46e6b0
je 0x423432
cmp ecx, 0x40f03b4
jne 0x423420
jmp 0x423439
mov ecx, 0x40f03b4
jmp 0x423420
mov dword [esi + 8], edi
mov ecx, dword [esi + 8]
mov ecx, dword [esi + 8]
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esi + 8]
mov eax, 0xada75f1f
jmp 0x423400
mov eax, 0xe97e96a2
jmp 0x421d70
mov eax, dword [esi + 0x20]
mov eax, 0x9e29fbc3
jmp 0x421d70
mov eax, 0xb06e6b20
jmp 0x421d70
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x78]
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
mov ebx, dword [esi + 0x14]
mov eax, 0x7d39a130
nop word cs:[eax + eax]
cmp eax, 0x9fedcf6
jle 0x423510
cmp eax, 0x9fedcf7
je 0x42357f
cmp eax, 0x477bcf9f
je 0x423b29
cmp eax, 0x7d39a130
jne 0x4234a0
mov edx, dword [0x480410]
mov ecx, dword [0x48040c]
mov edi, 0x510de85
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, 0x8c15b37a
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4234a0
cmp eax, 0x8c15b37a
je 0x423589
cmp eax, 0x510de85
jne 0x4234a0
mov dword [esi + 8], ebx
mov ecx, dword [esi + 8]
sub esp, 4
movzx eax, byte [esi + 0xac]
mov byte [esp], al
call fcn.0040b490
mov edx, dword [0x480410]
mov ecx, dword [0x48040c]
mov dword [esi + 4], ebx
mov edi, 0x9fedcf7
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, 0x8c15b37a
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
mov ebx, dword [esi + 4]
jmp 0x4234a0
mov eax, 0x477bcf9f
jmp 0x4234a0
sub esp, 4
movzx eax, byte [esi + 0xac]
mov ecx, ebx
mov byte [esp], al
call fcn.0040b490
mov eax, 0x510de85
jmp 0x4234a0
movzx eax, byte [ebp + 0x18]
mov byte [esi + 0x1b], al
mov eax, 0xaf9336a9
jmp 0x421d70
mov eax, dword [0x47ff98]
mov ebx, 0x1f4316d3
mov edi, 0xe07230a5
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xe07230a5
jmp 0x423b63
mov eax, 0x77731fbc
jmp 0x421d70
mov eax, dword [esi + 0x5c]
mov dword [esi + 0xac], eax
mov eax, dword [0x4803b8]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4803b4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xd28c666e
or cl, dl
mov ecx, 0x88b16ae6
mov edx, 0xe5b4f7e8
cmovne eax, ecx
mov ecx, 0xd28c666e
cmovne ecx, edx
mov edx, 0x1186300d
nop dword [eax + eax]
cmp edx, 0xd28c666d
jle 0x423670
cmp edx, 0xd28c666e
je 0x423685
cmp edx, 0x1186300d
je 0x423692
cmp edx, 0xe5b4f7e8
jne 0x423640
mov edx, dword [esi + 0xac]
mov edx, dword [edx]
mov dword [esi + 8], edx
mov edx, eax
jmp 0x423640
cmp edx, 0x88b16ae6
je 0x423696
cmp edx, 0xc6638f21
jne 0x423640
jmp 0x423b80
mov edx, dword [esi + 0xac]
mov edx, 0xe5b4f7e8
jmp 0x423640
mov edx, ecx
jmp 0x423640
mov edx, 0xc6638f21
jmp 0x423640
mov eax, 0x41ee34e5
jmp 0x421d70
mov eax, dword [esi + 0xa8]
mov ecx, 0x3baf6115
not eax
or eax, 0xfffffe3f
cmp eax, 0xffffffbf
mov eax, 0xf228a306
cmove eax, ecx
jmp 0x421d70
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x38]
mov eax, 0xb7131aee
jmp 0x421d70
mov eax, dword [esi + 0x1c]
mov ecx, dword [0x4803c0]
mov edi, 0x5f2dec0
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x4803bc], 0xa
setge dl
setl ch
or dl, al
xor ch, cl
mov eax, 0xb2f12282
not dl
or dl, ch
mov ecx, 0x1c3a6a4d
test dl, 1
cmovne ecx, eax
mov eax, 0x2587090
mov dword [esi + 0x28], ecx
mov ecx, 0x1c3a6a4d
cmovne ecx, eax
mov eax, 0x5e31cac3
mov dword [esi + 0x10], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, 0xa63181d
mov dword [esi + 0x3c], ecx
mov ecx, 0x363b40f5
cmovne ecx, eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x2c], ecx
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], ecx
jmp 0x423785
cmp edx, 0x363b40f5
je 0x42381e
mov ebx, ecx
mov dword [esi + 4], eax
mov edi, edx
cmp edx, 0x5e31cac3
jne 0x423785
mov edi, 0xab4f5b8
mov eax, dword [esi + 4]
mov ebx, ecx
mov edx, edi
mov ecx, ebx
cmp edi, 0xab4f5b7
jle 0x4237c0
cmp edx, 0x363b40f4
jg 0x423760
mov edi, dword [esi + 0x10]
mov ebx, ecx
mov dword [esi + 4], eax
cmp edx, 0xab4f5b8
je 0x423785
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0x1c3a6a4d
jne 0x423785
mov edi, 0x2587090
jmp 0x423780
mov dword [esi + 4], eax
cmp edx, 0x5f2debf
jle 0x4237f1
mov edi, dword [esi + 0x2c]
mov ebx, ecx
cmp edx, 0x5f2dec0
je 0x423785
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0xa63181d
jne 0x423785
mov eax, dword [esi + 4]
mov edi, dword [esi + 0x3c]
mov ebx, ecx
jmp 0x423785
mov ebx, dword [esi + 0x44]
mov eax, dword [esi + 0x40]
mov edi, dword [esi + 0x28]
cmp edx, 0x2587090
je 0x423785
mov eax, dword [esi + 4]
mov ebx, ecx
mov edi, edx
cmp edx, 0xb2f12282
jne 0x423785
jmp 0x423b8d
mov edi, 0xa63181d
mov ebx, ecx
jmp 0x423785
cmp byte [esi + 0x36], 0
mov eax, 0xf8e3b490
mov ecx, 0x1d58590
cmovne eax, ecx
jmp 0x421d70
mov eax, 0xe447c3fe
jmp 0x421d70
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x9c], eax
mov eax, 0xce17c112
jmp 0x421d70
mov eax, dword [esi + 0x38]
mov ecx, dword [eax]
push dword [esi + 0x4c]
call fcn.00437630
mov eax, 0xb5042c3
jmp 0x421d70
mov eax, dword [0x47ff98]
mov edi, 0xab3f01
mov ebx, 0x98b7cd5c
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0x98b7cd5c
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x47ff94], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x421d70
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
mov eax, 0x640133fd
jmp 0x421d70
mov eax, 0x74f5e656
jmp 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0xe322a7cd
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, 0x21c97847
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 8]
cmovge eax, edi
jmp 0x421d70
mov eax, dword [esi + 0x8c]
mov dword [esi + 0x74], eax
mov eax, 0x4e7a059b
jmp 0x421d70
mov eax, dword [esi + 8]
mov ebx, 0xe9bd1ac0
mov edi, 0x98b7cd5c
mov ecx, eax
xor ecx, 0xffffbfff
test ecx, eax
mov eax, dword [0x47ff98]
setne byte [esi + 0x36]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x98b7cd5c
jmp 0x423b5b
lea ecx, [ebp + 0xc]
mov eax, dword [esi + 0x50]
vmovsd xmm0, qword [ecx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
mov edx, dword [esi + 0x50]
mov ecx, dword [esi + 0x24]
mov edi, dword [esi + 0x74]
movsx ebx, byte [esi + 0x1b]
sub esp, 0x18
vmovsd xmm0, qword [edx]
mov edx, dword [ebp + 0x14]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 8]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov dword [esp], edx
call eax
mov eax, dword [0x47ff98]
mov ebx, 0xb3deb38e
mov edi, 0x65e0aae6
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x65e0aae6
jmp 0x423b5b
mov ecx, dword [esi + 0xac]
mov edx, dword [esi + 8]
push eax
call edx
mov eax, 0x6f38ba16
jmp 0x421d70
mov dword [esi + 8], ecx
mov ecx, dword [esi + 8]
sub eax, dword [ecx]
mov ecx, dword [esi + 0x1c]
mov dword [ecx], eax
mov eax, 0xe447c3fe
jmp 0x421d70
mov eax, dword [esi + 8]
mov ebx, dword [esi + 0x4c]
mov ecx, ebx
call fcn.00409b70
mov eax, 0xe5a891ad
mov dword [esi + 8], ebx
jmp 0x423c00
mov eax, dword [esi + 8]
mov eax, 0x4a68e380
jmp 0x421d70
mov edx, dword [0x47ff98]
mov ecx, dword [0x47ff94]
mov edi, 0x3dc34c4
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, 0x4b6ee91
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esi + 0x20]
cmovge eax, edx
jmp 0x421d70
mov dword [esi + 8], eax
lea edx, [ebp + 0xc]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x6c]
vmovsd xmm0, qword [edx]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x6c]
mov ebx, dword [esi + 0x24]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], eax
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00428f30
add esp, 0x18
mov eax, dword [esi + 0x58]
mov ecx, dword [ebp + 0x14]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
lea eax, [ebp + 0xc]
mov dword [eax + 4], ebx
mov dword [eax], edi
mov eax, dword [esi + 0x58]
push 0
push 0
call fcn.00410ec0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x70]
mov dword [ecx + 4], ebx
mov dword [ecx], edi
mov ecx, dword [esi + 0x70]
mov edx, dword [esi + 0x24]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
movsx edi, byte [ebp + 0x18]
mov ecx, dword [ebp + 8]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edi
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004288c0
add esp, 0x18
mov eax, dword [esi + 0x1c]
mov eax, 0x2a91eca9
jmp 0x421d70
push dword [esi + 0x48]
call fcn.004278b0
add esp, 4
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x48]
call fcn.0041af70
mov eax, dword [esi + 0x48]
mov eax, 0xc3ecd6a9
jmp 0x421d70
mov ecx, dword [esi + 8]
push 0x473906
call fcn.0040f5c0
mov ecx, dword [esi + 8]
call fcn.0040f620
mov eax, dword [esi + 8]
mov eax, dword [0x47ff98]
mov ebx, 0x704a2cad
mov edi, 0x7308e2f9
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x7308e2f9
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x47ff94], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x421d70
mov eax, dword [esi + 8]
mov eax, 0xab3f01
jmp 0x421d70
mov eax, dword [esi + 4]
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], ecx
mov eax, 0x4ff9ab64
jmp 0x421d70
mov ecx, dword [esi + 8]
call fcn.0040a210
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0x4ac293ff
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, 0xb4bdb2ff
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
nop word cs:[eax + eax]
cmp eax, 0x4ac293fe
jle 0x423c20
cmp eax, 0x4ac293ff
je 0x423c5e
cmp eax, 0x525292ae
je 0x423bac
cmp eax, 0x5e3802fb
jne 0x423c00
jmp 0x423c74
cmp eax, 0xb4bdb2ff
je 0x423c6d
cmp eax, 0xe5a891ad
jne 0x423c00
mov edx, dword [0x480420]
mov ecx, dword [0x48041c]
mov edi, 0x4ac293ff
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, 0x525292ae
jmp 0x423be2
mov ecx, dword [esi + 8]
call fcn.0040a210
mov eax, 0x525292ae
jmp 0x423c00
mov eax, 0x5e3802fb
jmp 0x423c00
mov eax, dword [esi + 0x4c]
mov eax, 0xe97e96a2
jmp 0x421d70
cmp eax, 0xb7131aee
jne 0x421d70
mov ecx, dword [esi + 0xb0]
xor ecx, ebp
call fcn.00439dc0
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x18