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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x130
mov eax, dword [0x4a12c0]
mov esi, esp
mov ecx, 0x5c24cd06
xor eax, ebp
cmp dword [ebp + 0x24], 0
mov dword [esi + 0x128], eax
mov eax, 0xb30375f1
cmove ecx, eax
mov dword [esi + 0x88], eax
mov dword [esi + 0x68], eax
mov dword [esi + 0xd4], ecx
mov ecx, 0xe0d195f0
jmp 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x9c7fb22d
mov edi, 0x148a88c7
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x148a88c7
sete al
cmove ecx, ebx
cmp dword [0x4a2fbc], 0xa
setl dl
cmovge ecx, edi
xor dl, al
cmovne ecx, ebx
nop
cmp ecx, 0x40a13cb
jle 0x422c10
cmp ecx, 0x4627632c
jg 0x422c90
cmp ecx, 0x25161335
jg 0x422d6c
cmp ecx, 0x148a88c6
jg 0x42306e
cmp ecx, 0x7f8e2b0
jg 0x423436
cmp ecx, 0x6f3456f
jle 0x42392f
cmp ecx, 0x6f34570
je 0x4242b4
cmp ecx, 0x732ee5b
je 0x4242c4
cmp ecx, 0x736c1df
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xdbce71a9
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xab27453b
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 0xc]
mov edi, dword [ebp + 0x20]
cmovge ecx, edx
mov eax, dword [eax]
lea eax, [edi + eax + 1]
mov dword [esi + 0xf4], eax
jmp 0x422b50
cmp ecx, 0xbc18e021
jle 0x422cf0
cmp ecx, 0xe0425bfd
jg 0x422e06
cmp ecx, 0xce5d3110
jg 0x4230d0
cmp ecx, 0xc77b6fc0
jg 0x423470
cmp ecx, 0xc4c55cc7
jle 0x4239e5
cmp ecx, 0xc4c55cc8
je 0x4242ce
cmp ecx, 0xc6a6d6b4
je 0x4242de
cmp ecx, 0xc6b94e10
jne 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0xf1c57b5f
mov eax, dword [eax]
movzx eax, byte [eax]
mov byte [esi + 0x26], al
jmp 0x422b50
cmp ecx, 0x6a23da0c
jg 0x422ec2
cmp ecx, 0x5d994b86
jg 0x423116
cmp ecx, 0x524c14c2
jg 0x4234aa
cmp ecx, 0x499606ee
jle 0x423a07
cmp ecx, 0x499606ef
je 0x424335
cmp ecx, 0x4e303a1c
je 0x42434e
cmp ecx, 0x5234ab09
jne 0x422b50
mov ecx, 0x3f01e129
jmp 0x422b50
cmp ecx, 0x9d9ffb38
jg 0x422f1a
cmp ecx, 0x93d3352c
jg 0x42315c
cmp ecx, 0x8eff8569
jg 0x423500
cmp ecx, 0x87be7867
jle 0x423a35
cmp ecx, 0x87be7868
je 0x42437c
cmp ecx, 0x8b413a33
je 0x424399
cmp ecx, 0x8d8d26c9
jne 0x422b50
movsx eax, byte [esi + 0x59]
mov ecx, 0x916cb16e
mov dword [esi + 0x104], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x108], eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 0x10c], eax
jmp 0x422b50
cmp ecx, 0x3865cce7
jg 0x4231be
cmp ecx, 0x2e147ca2
jg 0x423559
cmp ecx, 0x2c5247bb
jle 0x423a80
cmp ecx, 0x2c5247bc
je 0x4243a3
cmp ecx, 0x2cd9a3f4
je 0x4243e5
cmp ecx, 0x2d7d17da
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x2e147ca3
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x36a42720
cmovne edi, ebx
test edx, ecx
mov edx, dword [esi + 0xbc]
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
cmp edx, 0x100
setne byte [esi + 0x5d]
jmp 0x422b50
cmp ecx, 0xf0222b82
jg 0x423327
cmp ecx, 0xe6faaff8
jg 0x42359f
cmp ecx, 0xe13166d4
jle 0x423aac
cmp ecx, 0xe13166d5
je 0x4243ef
cmp ecx, 0xe41f4185
je 0x42445b
cmp ecx, 0xe6177031
jne 0x422b50
mov eax, dword [esi + 0x7c]
mov eax, dword [esi + 0xc]
mov edi, dword [esi + 0x1c]
sub edi, dword [eax]
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x14]
push dword [eax]
call fcn.00426570
lea edx, [ebp + 0x10]
mov ecx, dword [esi + 0xa4]
vmovsd xmm0, qword [edx]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x7c]
mov edx, dword [esi + 0xa4]
mov ebx, dword [esi + 0x38]
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.004280e0
add esp, 0x18
mov eax, dword [esi + 0x7c]
mov ecx, 0xdff4228b
vmovsd xmm0, qword [eax]
lea eax, [ebp + 0x10]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x7c]
jmp 0x422b50
cmp ecx, 0x78ac691c
jg 0x42336d
cmp ecx, 0x7540cc09
jg 0x4235e5
cmp ecx, 0x72dc1025
jle 0x423aea
cmp ecx, 0x72dc1026
je 0x424476
cmp ecx, 0x74fb4324
je 0x424483
cmp ecx, 0x74fe95fa
jne 0x422b50
mov eax, dword [esi + 0xac]
mov ecx, 0xaee5c87f
jmp 0x422b50
cmp ecx, 0xaa0d76ff
jle 0x4233f0
cmp ecx, 0xb30375f0
jg 0x42362a
cmp ecx, 0xaee5c87e
jle 0x423b4e
cmp ecx, 0xaee5c87f
je 0x42450f
cmp ecx, 0xb0b4e83b
je 0x424542
cmp ecx, 0xb1b4a40b
jne 0x422b50
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0xa8]
mov dword [eax], ecx
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
mov ecx, dword [eax]
push dword [esi + 0x2c]
call fcn.00426e50
mov eax, dword [esi + 8]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
mov eax, 0xe92797b5
nop dword [eax + eax]
cmp eax, 0xad25432
jle 0x422fc0
cmp eax, 0xad25433
je 0x42301a
cmp eax, 0x10a19fd9
je 0x424557
cmp eax, 0x4f55d2ac
jne 0x422f90
mov eax, dword [esi + 0x3c]
mov eax, 0x1cb8f48
jmp 0x422f90
cmp eax, 0xe92797b5
je 0x423059
cmp eax, 0x1cb8f48
jne 0x422f90
mov eax, dword [esi + 0x3c]
mov ebx, 0x10a19fd9
mov edi, 0x4f55d2ac
mov dword [esi + 0x84], eax
mov eax, dword [0x4a2fb8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x4f55d2ac
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x4a2fb4], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x422f90
mov eax, dword [0x4a2fb8]
mov edi, 0x1cb8f48
mov ebx, 0x4f55d2ac
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x4f55d2ac
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x4a2fb4], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x422f90
mov ecx, dword [esi + 0x10]
call fcn.0040ef50
mov dword [esi + 0x3c], eax
mov eax, 0xad25433
jmp 0x422f90
cmp ecx, 0x1f0f5db1
jg 0x423681
cmp ecx, 0x154c8c33
jle 0x423b73
cmp ecx, 0x154c8c34
je 0x42459a
cmp ecx, 0x1a9d4f76
je 0x424661
cmp ecx, 0x1eafe63e
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0xa524761d
mov edi, 0x97b58c97
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x97b58c97
jmp 0x422b37
cmp ecx, 0xdd431118
jg 0x4236e3
cmp ecx, 0xd76a6cb3
jle 0x423bbd
cmp ecx, 0xd76a6cb4
je 0x4246a5
cmp ecx, 0xd7753e34
je 0x4246d1
cmp ecx, 0xdbce71a9
jne 0x422b50
mov ecx, 0x499606ef
jmp 0x422b50
cmp ecx, 0x63e51b5e
jg 0x423739
cmp ecx, 0x5f9f2c8e
jle 0x423c26
cmp ecx, 0x5f9f2c8f
je 0x4246db
cmp ecx, 0x6059c5d0
je 0x4246f9
cmp ecx, 0x62ba3937
jne 0x422b50
mov ecx, 0x1fc1620e
jmp 0x422b50
cmp ecx, 0x98f1b778
jg 0x423780
cmp ecx, 0x954a2ee3
jle 0x423c56
cmp ecx, 0x954a2ee4
je 0x42471f
cmp ecx, 0x97b58c97
je 0x424734
cmp ecx, 0x98e12421
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0xffc8036
mov ebx, 0x25161336
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x25161336
jmp 0x4252bc
cmp ecx, 0x3e640fbc
jg 0x4237e2
cmp ecx, 0x392e7c20
jle 0x423c78
cmp ecx, 0x392e7c21
je 0x42473e
cmp ecx, 0x3b79526b
je 0x4247c3
cmp ecx, 0x3b7af376
jne 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push 0
push 0
call fcn.00410430
mov eax, dword [esi + 0x20]
lea edi, [ebp + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
movsx ecx, byte [ecx]
mov edx, dword [esi + 0x80]
vmovsd xmm0, qword [edi]
vmovsd qword [edx], xmm0
mov edx, dword [esi + 0x80]
mov edi, dword [esi + 0x38]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x10], ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.00427bd0
add esp, 0x18
mov eax, dword [esi + 0x40]
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 8]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
mov eax, 0xbc7af574
nop dword [eax + eax]
cmp eax, 0x1fc136a5
jle 0x4232c0
cmp eax, 0x1fc136a6
je 0x4247ea
cmp eax, 0x4c4e52be
je 0x4232d5
cmp eax, 0x5bd84e7f
jne 0x423270
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
call fcn.004093e0
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0xf31118c8
jmp 0x4232f5
cmp eax, 0xbc7af574
je 0x4232e4
cmp eax, 0xf31118c8
jne 0x423270
mov eax, 0x1fc136a6
jmp 0x423270
mov ecx, dword [esi + 0x10]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x423270
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0x5bd84e7f
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, 0x4c4e52be
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x423270
cmp ecx, 0xfa851351
jg 0x423838
cmp ecx, 0xf82be880
jle 0x423da3
cmp ecx, 0xf82be881
je 0x4248c7
cmp ecx, 0xf8c3541f
je 0x424975
cmp ecx, 0xf9e1779c
jne 0x422b50
mov ecx, 0x7b50e396
jmp 0x422b50
cmp ecx, 0x7b54479c
jg 0x42388f
cmp ecx, 0x79b3b631
jle 0x423de2
cmp ecx, 0x79b3b632
je 0x424a06
cmp ecx, 0x7a6cc2b9
je 0x424a10
cmp ecx, 0x7b50e396
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x63e51b5f
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x2cd9a3f4
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 0x34]
cmovge ecx, edx
jmp 0x422b50
cmp ecx, 0xa24e88f0
jg 0x4238e5
cmp ecx, 0xa02df29d
jle 0x423e20
cmp ecx, 0xa02df29e
je 0x424a3d
cmp ecx, 0xa0bfd74a
je 0x424a5b
cmp ecx, 0xa15f9830
jne 0x422b50
mov ecx, 0x7997e83a
jmp 0x422b50
cmp ecx, 0xffc8035
jle 0x423e85
cmp ecx, 0xffc8036
je 0x424a8c
cmp ecx, 0x138b3998
je 0x424ac1
cmp ecx, 0x145d9e8e
jne 0x422b50
mov ecx, 0x99a64ee9
jmp 0x422b50
cmp ecx, 0xc9434d30
jle 0x423ecc
cmp ecx, 0xc9434d31
je 0x424acb
cmp ecx, 0xc9d3746d
je 0x422b15
cmp ecx, 0xcc67e62a
jne 0x422b50
mov ecx, 0x756866f7
jmp 0x422b50
cmp ecx, 0x55fcf206
jle 0x423ef9
cmp ecx, 0x55fcf207
je 0x424afd
cmp ecx, 0x57173439
je 0x424b07
cmp ecx, 0x5c24cd06
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0xa24e88f1
mov edi, 0xd7753e34
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xd7753e34
jmp 0x422b37
cmp ecx, 0x905a84af
jle 0x423f1b
cmp ecx, 0x905a84b0
je 0x424b1a
cmp ecx, 0x910aca17
je 0x424b33
cmp ecx, 0x916cb16e
jne 0x422b50
mov eax, dword [esi + 0x108]
sub eax, dword [esi + 0x10c]
mov ecx, dword [esi + 0x104]
cmp ecx, eax
mov ecx, 0x463a911a
setb byte [esi + 0x5a]
movzx eax, byte [esi + 0x5a]
mov dword [esi + 0x68], eax
jmp 0x422b50
cmp ecx, 0x32ff26bd
jle 0x423f4b
cmp ecx, 0x32ff26be
je 0x424b4c
cmp ecx, 0x35d2c425
je 0x424b98
cmp ecx, 0x36a42720
jne 0x422b50
cmp byte [esi + 0x5d], 0
mov ecx, 0x3e640fbd
mov eax, 0x46d97e3
cmovne ecx, eax
jmp 0x422b50
cmp ecx, 0xee488abe
jle 0x423f7b
cmp ecx, 0xee488abf
je 0x424bb0
cmp ecx, 0xefa30060
je 0x424bc5
cmp ecx, 0xefb8d181
jne 0x422b50
cmp byte [esi + 0x54], 0
mov ecx, 0x98e12421
mov eax, 0xc6b94e10
cmovne ecx, eax
jmp 0x422b50
cmp ecx, 0x7572c6d6
jle 0x423fa0
cmp ecx, 0x7572c6d7
je 0x424be0
cmp ecx, 0x764af318
je 0x424bf3
cmp ecx, 0x76d0607d
jne 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0x910aca17
mov eax, dword [eax]
mov dword [esi + 0x100], eax
jmp 0x422b50
cmp ecx, 0xb798fb3c
jle 0x423fc2
cmp ecx, 0xb798fb3d
je 0x424c08
cmp ecx, 0xbbce3c41
je 0x424c20
cmp ecx, 0xbbe1d109
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x9dcdd2fc
mov edi, 0x5d994b87
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x5d994b87
jmp 0x422b37
cmp ecx, 0x20dc4fab
jle 0x423ff0
cmp ecx, 0x20dc4fac
je 0x424c3b
cmp ecx, 0x21b0d7f7
je 0x424c45
cmp ecx, 0x2218be69
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xab27453b
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x736c1df
jmp 0x425320
cmp ecx, 0xdeba7867
jle 0x42402e
cmp ecx, 0xdeba7868
je 0x424c4f
cmp ecx, 0xdf4af632
je 0x424c5d
cmp ecx, 0xdff4228b
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x3b7af376
mov ebx, 0x78ac691d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x78ac691d
jmp 0x4252bc
cmp ecx, 0x65b2b1b0
jle 0x42406d
cmp ecx, 0x65b2b1b1
je 0x424c67
cmp ecx, 0x65ba7446
je 0x424c9c
cmp ecx, 0x681d0892
jne 0x422b50
mov eax, dword [esi + 0xdc]
mov ecx, 0xfd6c7b3d
cmp byte [eax], 0x2d
sete byte [esi + 0x50]
jmp 0x422b50
cmp ecx, 0x9a75acf7
jle 0x4240b7
cmp ecx, 0x9a75acf8
je 0x424cc2
cmp ecx, 0x9c7fb22d
je 0x424ccc
cmp ecx, 0x9ce4a575
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x62ba3937
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x1fc1620e
jmp 0x425320
cmp ecx, 0x3f01e128
jle 0x424190
cmp ecx, 0x3f01e129
je 0x424d27
cmp ecx, 0x401811b7
je 0x424d59
cmp ecx, 0x452ea130
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x98f1b779
mov edi, 0xc46f083d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xc46f083d
jmp 0x422b37
cmp ecx, 0xff5f8a5f
jle 0x4241cf
cmp ecx, 0xff5f8a60
je 0x424d8b
cmp ecx, 0xcf1f49
je 0x424d98
cmp ecx, 0x23e17b7
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0xa0bfd74a
mov edi, 0x4e303a1c
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x4e303a1c
jmp 0x422b37
cmp ecx, 0x7c263b1f
jle 0x4241f8
cmp ecx, 0x7c263b20
je 0x424da2
cmp ecx, 0x7c627b18
je 0x424dd5
cmp ecx, 0x7f4cddef
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x3b79526b
mov edi, 0x20dc4fac
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x20dc4fac
jmp 0x422b37
cmp ecx, 0xa738b144
jg 0x42427f
cmp ecx, 0xa24e88f1
je 0x424deb
cmp ecx, 0xa524761d
jne 0x425612
mov eax, dword [0x4a2fc0]
mov edi, 0xe6faaff9
mov ebx, 0x97b58c97
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x97b58c97
jmp 0x4252bc
cmp ecx, 0x40a13cc
je 0x424e32
cmp ecx, 0x46d97e3
jne 0x422b50
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x20]
lea edi, [ebp + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
movsx ecx, byte [ecx]
mov edx, dword [esi + 0x94]
vmovsd xmm0, qword [edi]
vmovsd qword [edx], xmm0
mov edx, dword [esi + 0x6c]
mov edi, dword [esi + 0x94]
mov ebx, dword [esi + 0x38]
sub esp, 0x18
vmovsd xmm0, qword [edi]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.00427bd0
add esp, 0x18
mov eax, dword [esi + 0x6c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
lea eax, [ebp + 0x10]
mov dword [eax + 4], ebx
mov dword [eax], edi
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x20]
mov dword [eax], 0
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 0xc0], eax
mov ecx, dword [esi + 0x14]
push 0
call fcn.00426570
mov dword [esi + 0xc4], eax
mov ecx, 0x9d9ffb39
mov eax, dword [esi + 0x8c]
mov dword [eax + 4], ebx
mov dword [eax], edi
jmp 0x422b50
cmp ecx, 0xbc18e022
je 0x424e47
cmp ecx, 0xc46f083d
jne 0x422b50
mov ecx, 0x452ea130
jmp 0x422b50
cmp ecx, 0x4627632d
je 0x424e97
cmp ecx, 0x463a911a
jne 0x422b50
test byte [esi + 0x68], 1
mov ecx, 0xff5f8a60
mov eax, 0xc9d3746d
cmovne ecx, eax
jmp 0x422b50
cmp ecx, 0x8404f8e0
je 0x424edb
cmp ecx, 0x841d296a
jne 0x422b50
mov eax, dword [esi + 0x40]
mov edi, 0x54be9310
mov ebx, 0x72dc1026
cmp dword [eax], 0x100
mov eax, dword [0x4a2fc0]
lea ecx, [eax + 1]
sete byte [esi + 0x5e]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x72dc1026
jmp 0x4252bc
cmp ecx, 0x25161336
je 0x424ee5
cmp ecx, 0x25f3ab6a
jne 0x422b50
movsx eax, byte [esi + 0x56]
mov ecx, 0x4627632d
mov dword [esi + 0xac], eax
jmp 0x422b50
cmp ecx, 0xe0425bfe
je 0x424f11
cmp ecx, 0xe0d195f0
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x392e7c21
mov ebx, 0x7f8e2b1
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x7f8e2b1
jmp 0x4252bc
cmp ecx, 0x6a23da0d
je 0x424f1b
cmp ecx, 0x6c5af86c
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xf0222b83
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xdeba7868
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
cmp byte [esi + 0x26], 0
setg byte [esi + 0x55]
jmp 0x422b50
cmp ecx, 0xaa0d7700
je 0x424f2b
cmp ecx, 0xab27453b
jne 0x422b50
mov eax, dword [esi + 0xc]
mov ecx, 0x736c1df
jmp 0x422b50
cmp ecx, 0x148a88c7
je 0x424f35
cmp ecx, 0x153586e9
jne 0x422b50
cmp dword [esi + 0xb0], 0
mov eax, dword [0x4a2fc0]
mov edi, 0x6a23da0d
mov ebx, 0xc4c55cc8
lea ecx, [eax - 1]
setg byte [esi + 0x58]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xc4c55cc8
jmp 0x4252bc
cmp ecx, 0xce5d3111
je 0x424f42
cmp ecx, 0xd19a832b
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x7c627b18
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x6f34570
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 0xb8]
cmovge ecx, edx
cmp eax, dword [esi + 0x1c]
setbe byte [esi + 0x5c]
jmp 0x422b50
cmp ecx, 0x5d994b87
je 0x424f5b
cmp ecx, 0x5f763eac
jne 0x422b50
mov eax, dword [esi + 0x78]
mov eax, dword [esi + 0xc]
mov ecx, 0xe13166d5
mov eax, dword [eax]
mov dword [esi + 0x124], eax
jmp 0x422b50
cmp ecx, 0x93d3352d
je 0x424f65
cmp ecx, 0x947ad9d0
jne 0x422b50
mov ecx, 0x98e12421
jmp 0x422b50
cmp ecx, 0x3865cce8
je 0x424f72
cmp ecx, 0x38f9f43a
jne 0x422b50
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0xa8]
mov dword [eax], ecx
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
mov ecx, dword [eax]
push dword [esi + 0x2c]
call fcn.00426e50
mov eax, dword [esi + 8]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
mov eax, 0xe92797b5
nop dword [eax]
cmp eax, 0xad25432
jle 0x423cf0
cmp eax, 0xad25433
je 0x423d50
cmp eax, 0x10a19fd9
je 0x424f8f
cmp eax, 0x4f55d2ac
jne 0x423cc0
mov eax, dword [esi + 0x3c]
mov eax, 0x1cb8f48
jmp 0x423cc0
cmp eax, 0xe92797b5
je 0x423d8e
cmp eax, 0x1cb8f48
jne 0x423cc0
mov edx, dword [0x4a2fb8]
mov ecx, dword [0x4a2fb4]
mov edi, 0x10a19fd9
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, 0x4f55d2ac
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
mov edi, dword [esi + 0x3c]
cmp ecx, 0xa
cmovge eax, edx
mov dword [esi + 0x84], edi
jmp 0x423cc0
mov eax, dword [0x4a2fb8]
mov edi, 0x1cb8f48
mov ebx, 0x4f55d2ac
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4f55d2ac
sete cl
cmove eax, edi
cmp dword [0x4a2fb4], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x423cc0
mov ecx, dword [esi + 0x10]
call fcn.0040ef50
mov dword [esi + 0x3c], eax
mov eax, 0xad25433
jmp 0x423cc0
cmp ecx, 0xf0222b83
je 0x424fad
cmp ecx, 0xf1c57b5f
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x6c5af86c
mov ebx, 0xdeba7868
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xdeba7868
jmp 0x4252bc
cmp ecx, 0x78ac691d
je 0x424fb7
cmp ecx, 0x7997e83a
jne 0x422b50
mov eax, dword [esi + 0x40]
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
call fcn.0040fbd0
mov edx, dword [esi + 0x40]
mov ecx, eax
xor ecx, 0xfffffe3f
and ecx, eax
mov dword [edx], ecx
mov ecx, 0x35d2c425
jmp 0x422b50
cmp ecx, 0x9d9ffb39
je 0x42510d
cmp ecx, 0x9dcdd2fc
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x1f0f5db2
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x5d994b87
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
mov edx, dword [ebp + 0x20]
mov dword [esi + 0xdc], edx
jmp 0x422b50
cmp ecx, 0x7f8e2b1
je 0x42513f
cmp ecx, 0xf31015d
jne 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, 0x5143d4b9
mov eax, dword [eax]
nop word [eax + eax]
cmp ecx, 0x5143d4b9
je 0x423ec5
cmp ecx, 0x845f2e35
jne 0x423eb0
jmp 0x425149
mov ecx, 0x845f2e35
jmp 0x423eb0
cmp ecx, 0xc77b6fc1
je 0x42519f
cmp ecx, 0xc87684bc
jne 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0x25f3ab6a
mov eax, dword [eax]
movzx eax, byte [eax]
mov byte [esi + 0x56], al
jmp 0x422b50
cmp ecx, 0x524c14c3
je 0x4251a9
cmp ecx, 0x54be9310
jne 0x422b50
mov ecx, 0x1eafe63e
jmp 0x422b50
cmp ecx, 0x8eff856a
je 0x4251cd
cmp ecx, 0x902089b5
jne 0x422b50
mov eax, dword [esi + 0x70]
mov eax, dword [esi + 0xc]
mov ecx, 0x154c8c34
mov eax, dword [eax]
mov dword [esi + 0x120], eax
jmp 0x422b50
cmp ecx, 0x2e147ca3
je 0x4251f1
cmp ecx, 0x313cd142
jne 0x422b50
movzx eax, byte [esi + 0x52]
mov ecx, 0xd76a6cb4
mov edx, 0x57173439
cmp al, 0x30
cmove ecx, edx
jmp 0x422b50
cmp ecx, 0xe6faaff9
je 0x425201
cmp ecx, 0xe7b38fba
jne 0x422b50
mov eax, dword [esi + 0x64]
mov ecx, 0x6470a3b1
jmp 0x422b50
cmp ecx, 0x7540cc0a
je 0x425217
cmp ecx, 0x756866f7
jne 0x422b50
mov ecx, 0xe0425bfe
jmp 0x422b50
cmp ecx, 0xb30375f1
je 0x42522d
cmp ecx, 0xb42267a0
jne 0x422b50
cmp byte [esi + 0x55], 0
mov ecx, 0x98e12421
mov eax, 0xe7b38fba
cmovne ecx, eax
jmp 0x422b50
cmp ecx, 0x1f0f5db2
je 0x42527a
cmp ecx, 0x1fc1620e
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x947ad9d0
mov edi, 0x62ba3937
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x62ba3937
jmp 0x422b37
cmp ecx, 0xdd431119
je 0x425284
cmp ecx, 0xddca3cf9
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x452ea130
mov ebx, 0xc46f083d
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xc46f083d
jmp 0x4252bc
cmp ecx, 0x63e51b5f
je 0x42529b
cmp ecx, 0x6470a3b1
jne 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xce5d3111
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x2c5247bc
jmp 0x425320
cmp ecx, 0x98f1b779
je 0x4252d9
cmp ecx, 0x99a64ee9
jne 0x422b50
push eax
push eax
mov eax, esp
mov dword [esi + 0x6c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x94], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x48], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x8c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x70], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x98], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x74], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x9c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x78], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xa0], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x7c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xa4], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x80], eax
movzx ecx, byte [ebp + 0x1c]
mov eax, dword [esi + 0x60]
mov byte [eax], cl
mov ecx, dword [ebp + 0x18]
mov eax, dword [esi + 0x18]
mov dword [eax], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 0x90]
mov dword [eax], ecx
mov eax, dword [esi + 0x90]
mov eax, dword [eax]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0xc]
mov eax, dword [ebp + 0x24]
mov ecx, dword [esi + 0xd4]
mov dword [esi + 0x88], 0
mov dword [esi + 0x1c], eax
jmp 0x422b50
cmp ecx, 0x3e640fbd
je 0x4252f3
cmp ecx, 0x3e66c835
jne 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x401811b7
mov ebx, 0xb0b4e83b
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xb0b4e83b
jmp 0x4252bc
cmp ecx, 0xfa851352
je 0x425335
cmp ecx, 0xfd6c7b3d
jne 0x422b50
movzx eax, byte [esi + 0x50]
mov ecx, 0x32ff26be
mov byte [esi + 0x25], al
jmp 0x422b50
cmp ecx, 0x7b54479d
je 0x42534b
cmp ecx, 0x7bea9c66
jne 0x422b50
movzx eax, byte [esi + 0x27]
mov ecx, dword [esi + 0xc]
mov dword [ecx], eax
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
call fcn.0040fbd0
mov edi, dword [0x4a2fc0]
mov dword [esi + 0x10], eax
mov eax, dword [0x4a2fbc]
mov edx, 0x7540cc0a
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x87be7868
cmovne ebx, edx
test edi, ecx
mov edi, dword [esi + 0x10]
mov ecx, ebx
cmove ecx, edx
cmp eax, 0xa
cmovge ecx, ebx
mov edx, edi
xor edx, 0xfffff1ff
and edx, edi
cmp edx, 0x800
sete byte [esi + 0x51]
jmp 0x422b50
cmp ecx, 0xa738b145
je 0x425372
cmp ecx, 0xa7e551d2
jne 0x422b50
mov eax, dword [esi + 0xe8]
mov ecx, dword [esi + 0xec]
movzx eax, byte [eax + ecx]
mov ecx, 0x313cd142
mov byte [esi + 0x52], al
jmp 0x422b50
mov eax, dword [esi + 0xb8]
mov ecx, 0xd19a832b
jmp 0x422b50
mov ecx, 0xc87684bc
jmp 0x422b50
mov eax, dword [esi + 0xb0]
mov ecx, 0x153586e9
jmp 0x422b50
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x38]
mov edi, dword [esi + 0xc0]
mov ebx, dword [esi + 0xc4]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004280e0
add esp, 0x18
mov eax, dword [esi + 0x48]
mov ecx, 0xf8c3541f
vmovsd xmm0, qword [eax]
lea eax, [ebp + 0x10]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x48]
jmp 0x422b50
mov eax, dword [esi + 0xf4]
mov ecx, 0xefa30060
movsx eax, byte [eax]
mov dword [esi + 0xf8], eax
jmp 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, 0x5143d4b9
mov eax, dword [eax]
nop dword [eax + eax]
cmp ecx, 0x5143d4b9
je 0x424375
cmp ecx, 0x845f2e35
jne 0x424360
jmp 0x425386
mov ecx, 0x845f2e35
jmp 0x424360
movzx eax, byte [esi + 0x27]
mov ecx, dword [esi + 0xc]
mov dword [ecx], eax
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
call fcn.0040fbd0
mov ecx, 0x7bea9c66
jmp 0x422b50
mov ecx, 0x1a9d4f76
jmp 0x422b50
mov eax, dword [esi + 0x28]
mov ecx, dword [eax]
call fcn.00426fb0
mov ecx, dword [esi + 0x64]
mov edi, 0x55fcf207
mov byte [ecx], al
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xce5d3111
jmp 0x424ec5
mov ecx, 0x63e51b5f
jmp 0x422b50
mov ecx, dword [esi + 0x14]
push 0
call fcn.00426570
lea edx, [ebp + 0x10]
mov ecx, dword [esi + 0xa0]
vmovsd xmm0, qword [edx]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0xa0]
mov edi, dword [esi + 0x38]
mov ebx, dword [esi + 0x124]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.004280e0
add esp, 0x18
mov eax, dword [esi + 0x78]
mov ecx, 0x21b0d7f7
vmovsd xmm0, qword [eax]
lea eax, [ebp + 0x10]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x78]
jmp 0x422b50
mov eax, dword [esi + 0xe4]
mov ecx, 0x5f9f2c8f
cmp eax, dword [esi + 0x1c]
mov eax, 0xd76a6cb4
cmova ecx, eax
jmp 0x422b50
mov eax, dword [esi + 0x40]
mov ecx, 0x841d296a
jmp 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push dword [esi + 0x30]
call fcn.0041b140
push dword [esi + 0x30]
call fcn.00425640
add esp, 4
mov ecx, dword [esi + 0x30]
mov ebx, eax
call fcn.0041b2e0
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x44]
mov dword [eax], ebx
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x14]
push 0
mov edi, dword [esi + 0x1c]
push edi
call fcn.00426100
mov eax, dword [esi + 0x44]
mov ebx, dword [eax]
mov ecx, dword [esi + 0x14]
push 0
call fcn.00426570
mov ecx, dword [ebp + 0x20]
lea edx, [ecx + edi]
mov edi, ecx
mov ecx, ebx
push eax
push edx
push edi
call fcn.00426370
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x34]
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push dword [esi + 0x34]
call fcn.0041b140
push dword [esi + 0x34]
call fcn.004266e0
add esp, 4
mov ecx, dword [esi + 0x34]
call fcn.0041b2e0
mov ecx, 0xf82be881
jmp 0x422b50
mov eax, dword [esi + 0xac]
mov edi, 0x3865cce8
mov ebx, 0x74fe95fa
cmp eax, 0x7f
mov eax, dword [0x4a2fc0]
setne byte [esi + 0x57]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x74fe95fa
jmp 0x4252bc
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xb4]
mov dword [eax], ecx
mov ecx, 0x401811b7
jmp 0x422b50
mov eax, dword [esi + 0x84]
mov edi, 0xefb8d181
mov ebx, 0x38f9f43a
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp byte [eax], 0x7f
mov eax, dword [0x4a2fc0]
lea ecx, [eax + 1]
setne byte [esi + 0x54]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x38f9f43a
jmp 0x4252bc
mov ecx, dword [esi + 0x14]
push 0
call fcn.00426570
lea edx, [ebp + 0x10]
mov ecx, dword [esi + 0x98]
vmovsd xmm0, qword [edx]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x70]
mov edx, dword [esi + 0x98]
mov edi, dword [esi + 0x38]
mov ebx, dword [esi + 0x120]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.004280e0
add esp, 0x18
mov eax, dword [esi + 0x70]
vmovsd xmm0, qword [eax]
mov eax, dword [esi + 0x70]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
movsx ecx, byte [ecx]
mov edx, dword [esi + 0x9c]
vmovsd qword [edx], xmm0
mov edx, dword [esi + 0x74]
mov edi, dword [esi + 0x9c]
mov ebx, dword [esi + 0x38]
sub esp, 0x18
vmovsd xmm0, qword [edi]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.00427bd0
add esp, 0x18
mov eax, dword [esi + 0x74]
mov ecx, 0x21b0d7f7
vmovsd xmm0, qword [eax]
lea eax, [ebp + 0x10]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x20]
mov dword [eax], 0
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xd19a832b
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x6f34570
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x422b50
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x30]
mov eax, dword [0x4a2fc0]
mov edi, 0xf82be881
mov ebx, 0x74fb4324
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x74fb4324
jmp 0x4252bc
mov ecx, 0xa24e88f1
jmp 0x422b50
mov eax, dword [ebp + 0x20]
mov ecx, 0xa7e551d2
mov dword [esi + 0xe8], eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 0xec], eax
jmp 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x2d7d17da
mov edi, 0x2e147ca3
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x2e147ca3
jmp 0x422b37
mov eax, dword [esi + 0x40]
mov ecx, 0x6059c5d0
mov eax, dword [eax]
mov dword [esi + 0xbc], eax
jmp 0x422b50
mov ecx, 0xa524761d
jmp 0x422b50
push eax
mov eax, esp
mov dword [esi + 0x60], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
push eax
mov eax, esp
mov dword [esi + 0x90], eax
push eax
mov eax, esp
mov dword [esi + 0xc], eax
push eax
mov eax, esp
mov dword [esi + 0x44], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x28], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x2c], eax
push eax
mov eax, esp
mov dword [esi + 8], eax
push eax
mov eax, esp
mov dword [esi + 0x64], eax
push eax
mov eax, esp
mov dword [esi + 0x20], eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
mov eax, dword [0x4a2fc0]
mov ebx, 0x145d9e8e
mov edi, 0x7f8e2b1
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x7f8e2b1
jmp 0x422b37
mov eax, dword [0x4a2fc0]
mov edi, 0xcf1f49
mov ebx, 0x20dc4fac
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x20dc4fac
jmp 0x4252bc
mov ecx, dword [esi + 4]
call fcn.00409890
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x14]
mov dword [esi + 0x10], eax
mov eax, 0xbc7af574
nop word cs:[eax + eax]
cmp eax, 0x1fc136a5
jle 0x424860
cmp eax, 0x1fc136a6
je 0x425396
cmp eax, 0x4c4e52be
je 0x424875
cmp eax, 0x5bd84e7f
jne 0x424810
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
call fcn.004093e0
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0xf31118c8
jmp 0x424895
cmp eax, 0xbc7af574
je 0x424884
cmp eax, 0xf31118c8
jne 0x424810
mov eax, 0x1fc136a6
jmp 0x424810
mov ecx, dword [esi + 0x10]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x424810
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0x5bd84e7f
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, 0x4c4e52be
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x424810
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push dword [esi + 0x30]
call fcn.0041b140
push dword [esi + 0x30]
call fcn.00425640
add esp, 4
mov ecx, dword [esi + 0x30]
mov ebx, eax
call fcn.0041b2e0
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x44]
mov dword [eax], ebx
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x14]
push 0
mov edi, dword [esi + 0x1c]
push edi
call fcn.00426100
mov eax, dword [esi + 0x44]
mov ebx, dword [eax]
mov ecx, dword [esi + 0x14]
push 0
call fcn.00426570
mov ecx, dword [ebp + 0x20]
lea edx, [ecx + edi]
mov edi, ecx
mov ecx, ebx
push eax
push edx
push edi
call fcn.00426370
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x34]
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push dword [esi + 0x34]
call fcn.0041b140
push dword [esi + 0x34]
call fcn.004266e0
add esp, 4
mov dword [esi + 0xa8], eax
mov ecx, dword [esi + 0x34]
call fcn.0041b2e0
mov eax, dword [0x4a2fc0]
mov ebx, 0xf9e1779c
mov edi, 0x74fb4324
lea ecx, [eax + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
mov ecx, 0x74fb4324
jmp 0x422b37
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x38]
mov edi, dword [esi + 0xc0]
mov ebx, dword [esi + 0xc4]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004280e0
add esp, 0x18
mov eax, dword [esi + 0x48]
mov edx, dword [0x4a2fc0]
mov edi, 0x8404f8e0
lea ecx, [edx - 1]
vmovsd xmm0, qword [eax]
mov eax, dword [0x4a2fbc]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xc6a6d6b4
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
lea eax, [ebp + 0x10]
vmovsd qword [eax], xmm0
cmovge ecx, edx
mov eax, dword [esi + 0x48]
jmp 0x422b50
mov ecx, 0x8eff856a
jmp 0x422b50
mov ecx, dword [esi + 0x14]
movsx eax, byte [esi + 0x5b]
push eax
push 1
push dword [esi + 0x1c]
call fcn.004270f0
mov eax, dword [esi + 8]
mov ecx, 0xe0425bfe
mov eax, dword [eax]
cmp byte [eax + 1], 0
mov eax, 0x65ba7446
cmovg ecx, eax
jmp 0x422b50
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [esi + 0xf0]
cmp byte [eax + ecx + 1], 0x78
mov ecx, 0xfa851352
sete byte [esi + 0x53]
jmp 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, 0x5143d4b9
mov eax, dword [eax]
nop word cs:[eax + eax]
cmp ecx, 0x5143d4b9
je 0x424a85
cmp ecx, 0x845f2e35
jne 0x424a70
jmp 0x4253cd
mov ecx, 0x845f2e35
jmp 0x424a70
mov eax, dword [esi + 0x14]
mov ecx, 0x7023846f
mov dword [esi + 0x3c], eax
nop word [eax + eax]
cmp ecx, 0x9dbe4c7
je 0x425421
cmp ecx, 0x7023846f
jne 0x424aa0
mov eax, dword [esi + 0x3c]
mov ecx, 0x9dbe4c7
mov eax, dword [eax + 0x10]
jmp 0x424aa0
mov ecx, 0x524c14c3
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x65b2b1b1
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xf31015d
jmp 0x425320
mov ecx, 0x732ee5b
jmp 0x422b50
mov eax, dword [ebp + 0x20]
mov ecx, 0xa02df29e
mov dword [esi + 0xf0], eax
jmp 0x422b50
mov eax, dword [esi + 0xe0]
mov ecx, 0xe41f4185
add eax, 2
mov dword [esi + 0xe4], eax
jmp 0x422b50
mov eax, dword [esi + 0x100]
mov ecx, 0x7b54479d
movsx eax, byte [eax]
mov dword [esi + 0xb0], eax
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x5234ab09
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x3f01e129
cmovne edi, ebx
test edx, ecx
movzx edx, byte [esi + 0x25]
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
and dl, 1
mov byte [esi + 0x5f], dl
jmp 0x422b50
mov eax, dword [esi + 0x40]
mov ecx, 0x954a2ee4
cmp dword [eax], 0x40
mov eax, 0x3e640fbd
cmove ecx, eax
jmp 0x422b50
mov eax, dword [esi + 0xc]
mov ecx, 0x905a84b0
mov eax, dword [eax]
mov dword [esi + 0xe0], eax
jmp 0x422b50
mov eax, dword [esi + 0xf8]
mov ecx, 0xd76a6cb4
mov edx, 0xb798fb3d
cmp eax, 0x58
cmove ecx, edx
jmp 0x422b50
mov eax, dword [esi + 0x20]
mov ecx, 0xa15f9830
mov dword [eax], 0
jmp 0x422b50
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0xfc]
mov dword [eax], ecx
mov ecx, 0x7f4cddef
jmp 0x422b50
mov eax, dword [esi + 0xc]
mov ecx, 0x764af318
mov eax, dword [eax]
add eax, 2
mov dword [esi + 0xfc], eax
jmp 0x422b50
mov eax, dword [esi + 0x118]
sub eax, dword [esi + 0x11c]
mov ecx, dword [esi + 0x20]
mov dword [ecx], eax
mov ecx, 0x7997e83a
jmp 0x422b50
mov ecx, 0x3b79526b
jmp 0x422b50
mov ecx, 0xe6177031
jmp 0x422b50
movzx eax, byte [esi + 0x26]
mov ecx, 0x6c5af86c
jmp 0x422b50
mov ecx, 0xbbce3c41
jmp 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, 0x5143d4b9
mov eax, dword [eax]
nop word cs:[eax + eax]
cmp ecx, 0x5143d4b9
je 0x424c95
cmp ecx, 0x845f2e35
jne 0x424c80
jmp 0x42545c
mov ecx, 0x845f2e35
jmp 0x424c80
mov eax, dword [0x4a2fc0]
mov ebx, 0xbc18e022
mov edi, 0x93d3352d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x93d3352d
jmp 0x422b37
mov ecx, 0xdd431119
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x79b3b632
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x148a88c7
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 8]
cmovge ecx, edx
mov edx, dword [esi + 0x1c]
mov eax, dword [eax]
movsx eax, byte [eax]
mov dword [esi + 0x114], edx
mov dword [esi + 0x110], eax
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x5234ab09
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xa738b145
jmp 0x425320
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xb4]
mov ebx, 0xcc67e62a
mov edi, 0xb0b4e83b
mov dword [eax], ecx
mov eax, dword [0x4a2fc0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xb0b4e83b
jmp 0x422b37
mov eax, dword [esi + 0x64]
mov ecx, 0x9ce4a575
jmp 0x422b50
mov ecx, 0xd76a6cb4
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xb1b4a40b
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x38f9f43a
jmp 0x424ec5
cmp byte [esi + 0x5c], 0
mov ecx, 0xc9434d31
mov eax, 0x7572c6d7
cmovne ecx, eax
jmp 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0x9a75acf8
mov ebx, 0xd7753e34
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xd7753e34
sete al
cmove ecx, edi
cmp dword [0x4a2fbc], 0xa
setl dl
cmovge ecx, ebx
xor dl, al
mov edx, dword [ebp + 0x20]
cmovne ecx, edi
mov dword [esi + 0xd8], edx
jmp 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0x8d8d26c9
mov eax, dword [eax]
movzx eax, byte [eax]
mov byte [esi + 0x59], al
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xaa0d7700
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x93d3352d
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 8]
cmovge ecx, edx
mov eax, dword [eax]
inc eax
mov dword [esi + 0xb4], eax
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xaee5c87f
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x74fe95fa
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x422b50
mov ecx, 0xe6177031
jmp 0x422b50
mov eax, dword [esi + 0x14]
mov ecx, 0x7023846f
mov dword [esi + 0x3c], eax
cmp ecx, 0x9dbe4c7
je 0x42546c
cmp ecx, 0x7023846f
jne 0x424ef0
mov eax, dword [esi + 0x3c]
mov ecx, 0x9dbe4c7
mov eax, dword [eax + 0x10]
jmp 0x424ef0
mov ecx, 0xc87684bc
jmp 0x422b50
cmp byte [esi + 0x58], 0
mov ecx, 0x463a911a
mov eax, 0x40a13cc
jmp 0x424f80
mov ecx, 0x3e66c835
jmp 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0x9c7fb22d
jmp 0x422b50
mov eax, dword [esi + 0x28]
mov ecx, dword [eax]
call fcn.00426fb0
mov ecx, dword [esi + 0x64]
mov byte [ecx], al
mov ecx, 0x2c5247bc
jmp 0x422b50
mov ecx, 0x9dcdd2fc
jmp 0x422b50
mov eax, dword [esi + 8]
mov ecx, 0xbc18e022
jmp 0x422b50
cmp byte [esi + 0x57], 0
mov ecx, 0x463a911a
mov eax, 0x76d0607d
cmovne ecx, eax
mov dword [esi + 0x68], 0
jmp 0x422b50
mov eax, dword [esi + 0x84]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov ecx, 0xb1b4a40b
mov eax, dword [esi + 8]
jmp 0x422b50
mov ecx, 0xb42267a0
jmp 0x422b50
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push 0
push 0
call fcn.00410430
mov eax, dword [esi + 0x20]
lea edi, [ebp + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
movsx ecx, byte [ecx]
mov edx, dword [esi + 0x80]
vmovsd xmm0, qword [edi]
vmovsd qword [edx], xmm0
mov edx, dword [esi + 0x80]
mov edi, dword [esi + 0x38]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x10], ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.00427bd0
add esp, 0x18
mov eax, dword [esi + 0x40]
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 8]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
mov eax, 0xbc7af574
nop word cs:[eax + eax]
cmp eax, 0x1fc136a5
jle 0x4250a0
cmp eax, 0x1fc136a6
je 0x4254ac
cmp eax, 0x4c4e52be
je 0x4250b8
cmp eax, 0x5bd84e7f
jne 0x425030
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
call fcn.004093e0
mov eax, dword [0x4a3410]
mov ebx, 0xf31118c8
mov edi, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x4c4e52be
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x425030
cmp eax, 0xbc7af574
je 0x4250ca
cmp eax, 0xf31118c8
jne 0x425030
mov eax, 0x1fc136a6
jmp 0x425030
mov ecx, dword [esi + 0x10]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x425030
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0x5bd84e7f
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, 0x4c4e52be
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x425030
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0xc6a6d6b4
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xf8c3541f
jmp 0x425320
mov ecx, 0x392e7c21
jmp 0x422b50
mov dword [esi + 4], eax
mov ebx, 0xdf4af632
mov edi, 0x65b2b1b1
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x20]
mov dword [esi + 0x118], eax
mov eax, dword [0x4a2fc0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x65b2b1b1
sete al
cmove ecx, ebx
cmp dword [0x4a2fbc], 0xa
setl dl
cmovge ecx, edi
xor dl, al
mov edx, dword [esi + 0x1c]
cmovne ecx, ebx
mov dword [esi + 0x11c], edx
jmp 0x422b50
mov ecx, 0x7c263b20
jmp 0x422b50
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0xcc]
cmp eax, 1
mov eax, 0x7572c6d7
sbb ecx, 0
mov ecx, 0x23e17b7
cmovl ecx, eax
jmp 0x422b50
mov eax, dword [esi + 0x110]
mov ecx, dword [esi + 0x114]
sub ecx, eax
mov dword [esi + 0x1c], ecx
mov ecx, 0x7a6cc2b9
mov eax, dword [esi + 0x64]
movzx eax, byte [eax]
mov byte [esi + 0x5b], al
jmp 0x422b50
mov eax, dword [esi + 0xbc]
mov ecx, 0x2d7d17da
jmp 0x422b50
cmp byte [esi + 0x5e], 0
mov ecx, 0x5f763eac
mov eax, 0x902089b5
cmovne ecx, eax
jmp 0x422b50
cmp byte [esi + 0x51], 0
mov ecx, 0xd76a6cb4
mov eax, 0xee488abf
cmovne ecx, eax
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x87be7868
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x7bea9c66
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 0x88]
cmovge ecx, edi
and al, 1
mov byte [esi + 0x27], al
jmp 0x422b50
mov ecx, 0x681d0892
jmp 0x422b50
mov eax, dword [esi + 0xd8]
mov ecx, 0xddca3cf9
cmp byte [eax], 0x2b
sete byte [esi + 0x4f]
jmp 0x422b50
mov eax, dword [0x4a2fc0]
mov edi, 0xc77b6fc1
mov ebx, 0x2cd9a3f4
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x2cd9a3f4
sete al
cmove ecx, edi
cmp dword [0x4a2fbc], 0xa
setl dl
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
jmp 0x422b50
cmp byte [esi + 0x4f], 0
mov ecx, 0xbbe1d109
mov eax, 0x32ff26be
mov byte [esi + 0x25], 1
cmovne ecx, eax
jmp 0x422b50
mov edx, dword [0x4a2fc0]
mov eax, dword [0x4a2fbc]
mov edi, 0x72dc1026
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x841d296a
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
jmp 0x422b50
cmp byte [esi + 0x53], 0
mov ecx, 0x2218be69
mov eax, 0xb798fb3d
cmovne ecx, eax
jmp 0x422b50
mov eax, dword [0x4a2fc0]
mov ebx, 0x153586e9
mov edi, 0xc4c55cc8
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xc4c55cc8
jmp 0x422b37
movzx eax, byte [esi + 0x5f]
mov ecx, 0xb30375f1
mov dword [esi + 0x88], eax
jmp 0x422b50
mov dword [esi + 4], eax
mov ecx, 0xa0bfd74a
mov eax, dword [esi + 4]
jmp 0x422b50
mov ecx, dword [esi + 4]
call fcn.00409890
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0xc]
mov eax, dword [0x4a2fc0]
mov ebx, 0xa4eef772
mov edi, 0x78ac691d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x78ac691d
jmp 0x422b37
mov edi, dword [0x4a2fc0]
mov dword [esi + 4], eax
mov edx, dword [0x4a2fbc]
mov eax, dword [esi + 4]
lea ecx, [edi + 1]
imul ecx, edi
mov eax, dword [eax + 0x20]
mov edi, 0x4e303a1c
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov dword [esi + 0xb8], eax
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x8b413a33
cmovne edi, ebx
cmp ecx, 0xffffffff
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
cmovge ecx, edi
jmp 0x422b50
mov dword [esi + 4], eax
mov ecx, 0x5143d4b9
mov eax, dword [esi + 4]
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
nop word [eax + eax]
cmp ecx, 0x5143d4b9
je 0x425455
cmp ecx, 0x845f2e35
jne 0x425440
jmp 0x4255a9
mov ecx, 0x845f2e35
jmp 0x425440
mov dword [esi + 4], eax
mov ecx, 0xf31015d
mov eax, dword [esi + 4]
jmp 0x422b50
mov dword [esi + 4], eax
mov ecx, 0x5143d4b9
mov eax, dword [esi + 4]
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
nop word cs:[eax + eax]
cmp ecx, 0x5143d4b9
je 0x4254a5
cmp ecx, 0x845f2e35
jne 0x425490
jmp 0x4255e7
mov ecx, 0x845f2e35
jmp 0x425490
mov ecx, dword [esi + 4]
call fcn.00409890
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x14]
mov dword [esi + 0x10], eax
mov eax, 0xbc7af574
nop word cs:[eax + eax]
cmp eax, 0x1fc136a5
jle 0x425540
cmp eax, 0x1fc136a6
je 0x4255f7
cmp eax, 0x4c4e52be
je 0x425558
cmp eax, 0x5bd84e7f
jne 0x4254d0
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
call fcn.004093e0
mov eax, dword [0x4a3410]
mov ebx, 0xf31118c8
mov edi, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4c4e52be
sete cl
cmove eax, ebx
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x4254d0
cmp eax, 0xbc7af574
je 0x42556a
cmp eax, 0xf31118c8
jne 0x4254d0
mov eax, 0x1fc136a6
jmp 0x4254d0
mov ecx, dword [esi + 0x10]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x4254d0
mov eax, dword [0x4a3410]
mov edi, 0x5bd84e7f
mov ebx, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x4c4e52be
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x4254d0
mov dword [esi + 4], eax
mov ebx, 0x138b3998
mov edi, 0x25161336
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esi + 0xcc], eax
mov eax, dword [0x4a2fc0]
mov dword [esi + 0xc8], ecx
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x25161336
jmp 0x422b37
mov dword [esi + 4], eax
mov ecx, 0xffc8036
mov eax, dword [esi + 4]
jmp 0x422b50
mov ecx, dword [esi + 4]
call fcn.00409890
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0xc]
mov ecx, 0x3b7af376
jmp 0x422b50
cmp ecx, 0xa4eef772
jne 0x422b50
mov ecx, dword [esi + 0x128]
xor ecx, ebp
call fcn.0043a0c0
mov eax, dword [ebp + 0xc]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret