Function at 0x446d40
Capabilities:
Check os version
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push 0xffffffffffffffff
push 0x69ac7b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x538
mov eax, dword [0x70594c]
test eax, eax
push ebx
push esi
mov ebx, ecx
push edi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x14], 0x3f800000
je 0x446da8
mov cl, byte [eax + 4]
test cl, cl
je 0x446da8
cmp byte [0x709480], 6
jne 0x446da8
mov eax, dword [eax]
test eax, eax
jne 0x446d9b
mov dword [esp + 0x14], 0x3f000000
jmp 0x446da8
cmp eax, 1
jne 0x446da8
mov dword [esp + 0x14], 0x3eaaaaab
mov eax, dword [0x21f43a8]
push 0x21f4360
mov dword [0x21f437c], 0x3f800000
mov dword [0x21f436c], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc4]
xor eax, eax
lea ecx, [esp + 0x270]
push ecx
mov dword [0x7095b4], eax
mov dword [0x7095a4], eax
mov dword [0x7095b0], eax
mov dword [0x7095a0], eax
mov dword [0x7095b8], eax
mov dword [0x7095a8], eax
mov eax, dword [0x21f43a8]
mov edx, dword [eax]
push 2
push eax
call dword [edx + 0xb4]
lea edx, [esp + 0x150]
push edx
push 0
mov ecx, 0x10
lea esi, [esp + 0x278]
lea edi, [esp + 0x158]
push 0x21f409c
rep movsd dword es:[edi], dword [esi]
call fcn.005d2bb2
push ecx
fld dword [0x21f4074]
fsub dword [0x21f4068]
fld dword [0x21f406c]
fsub dword [0x21f4060]
fcom dword [0x6a867c]
fdivp st(1)
fld1
fpatan
fnstsw ax
test ah, 1
jne 0x446e64
fsubr dword [0x6ab5f8]
jmp 0x446e6c
fchs
fsub dword [0x6ab5f8]
fstp dword [esp]
push 0x21f411c
call fcn.005d3149
push 0x3fc90fdb
push 0x21f40dc
call fcn.005d30a7
mov ecx, dword [0x705814]
test ecx, ecx
je 0x446ec1
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x446ec1
cmp byte [0x709480], 1
jne 0x446ec1
mov ecx, dword [0x705d78]
mov edx, dword [0x6f3578]
mov eax, dword [0x6f3574]
push 0x461c4000
push ecx
push edx
push eax
jmp 0x446edc
mov ecx, dword [0x705d74]
mov edx, dword [0x705d78]
mov eax, dword [0x6f3578]
push ecx
mov ecx, dword [0x6f3574]
push edx
push eax
push ecx
mov ecx, 0x21f8bf8
call fcn.0059aaf0
mov ecx, 0x21f8bf8
call fcn.0059a8a0
mov ecx, dword [0x70594c]
test ecx, ecx
je 0x446f09
mov al, byte [ecx + 0x1d0]
test al, al
je 0x446f09
call fcn.00528370
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x91
push eax
call dword [edx + 0xe4]
mov al, byte [ebx + 9]
test al, al
je 0x447079
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0xffffffffffffffff
push 0x8b
push eax
call dword [ecx + 0xe4]
mov dword [esp + 0x15c], 0
mov dword [esp + 0x158], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x16c], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x17c], 0
mov dword [esp + 0x174], 0
mov dword [esp + 0x170], 0
mov dword [esp + 0x188], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x18c], 0x3f800000
mov dword [esp + 0x178], 0x3f800000
mov dword [esp + 0x164], 0x3f800000
mov dword [esp + 0x150], 0x3f800000
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
lea ecx, [esp + 0x150]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov eax, dword [ebx + 0x1402b8]
test eax, eax
je 0x447020
push 0x43960000
jmp 0x44704a
mov ecx, dword [0x705814]
test ecx, ecx
je 0x447045
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x447045
cmp byte [0x709480], 1
jne 0x447045
push 0x461c4000
jmp 0x44704a
push 0x42c80000
mov ecx, 0x21f8bf8
call fcn.0059ac80
lea esi, [ebx + 0x13cc3c]
mov ecx, esi
call fcn.00591e70
push 0x21f8cd4
mov ecx, esi
call fcn.00593410
mov ecx, esi
call fcn.005921d0
jmp 0x4471f6
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0xffffffffffffffff
push 0x8b
push eax
call dword [ecx + 0xe4]
mov edx, dword [0x705d74]
push edx
mov ecx, 0x21f8bf8
call fcn.0059ac80
movzx eax, byte [0x21f42e2]
mov dword [esp + 0x1c], eax
mov eax, dword [0x21f42e0]
mov ecx, eax
fild dword [esp + 0x1c]
shr ecx, 8
movzx edx, cl
fmul dword [0x6aae5c]
mov dword [esp + 0x1c], edx
movzx eax, al
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov al, byte [0x6f908b]
test al, al
fmul dword [0x6aae5c]
fstp dword [esp + 0x50]
fild dword [esp + 0x1c]
fmul dword [0x6aae5c]
fstp dword [esp + 0x54]
jne 0x4471b8
fmul dword [0x6aba5c]
fst dword [esp + 0x4c]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 0x41
jne 0x447117
mov dword [esp + 0x4c], 0x3f800000
fld dword [esp + 0x50]
fmul dword [0x6aba5c]
fst dword [esp + 0x50]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 0x41
jne 0x44713a
mov dword [esp + 0x50], 0x3f800000
fld dword [esp + 0x54]
fmul dword [0x6aba5c]
fcom dword [0x6a92f8]
fnstsw ax
test ah, 0x41
jne 0x447159
fstp st(0)
fld dword [0x6a92f8]
fld dword [esp + 0x4c]
mov ecx, dword [0x21f3f98]
fmul dword [0x6a961c]
mov esi, dword [ecx]
call fcn.005ba9a8
fld dword [esp + 0x50]
fmul dword [0x6a961c]
mov edi, eax
or edi, 0xffffff00
shl edi, 8
call fcn.005ba9a8
fmul dword [0x6a961c]
and eax, 0xff
or edi, eax
shl edi, 8
call fcn.005ba9a8
mov edx, dword [0x21f3f98]
and eax, 0xff
or edi, eax
push edi
push 0x22
push edx
call dword [esi + 0xe4]
jmp 0x4471ba
fstp st(0)
mov eax, dword [0x70594c]
test eax, eax
je 0x4471d7
mov cl, byte [eax + 0x1d0]
test cl, cl
je 0x4471d7
lea ecx, [ebx + 0xc]
call fcn.00590a00
jmp 0x4471df
lea ecx, [ebx + 0xc]
call fcn.00590950
mov edx, dword [0x21f42e0]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push edx
push 0x22
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x70594c]
test ecx, ecx
je 0x44720f
mov al, byte [ecx + 0x1d0]
test al, al
je 0x44720f
call fcn.00528290
fld dword [0x705f54]
push ecx
fadd st(0), st(0)
fstp dword [esp]
call fcn.00594990
mov eax, dword [ebx + 0x13fecc]
add esp, 4
test eax, eax
je 0x44724f
fld dword [eax + 0x18]
lea ecx, [esp + 0x4c]
fld dword [eax + 0x14]
mov eax, dword [eax + 0x10]
fstp dword [esp + 0x50]
push ecx
mov dword [esp + 0x50], eax
fstp dword [esp + 0x58]
call fcn.00594dc0
add esp, 4
push 0x10
call fcn.005b9e72
mov dword [esp + 0x48], eax
mov dword [eax + 0xc], 0
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x34]
mov dword [esp + 0x4c], edx
mov ecx, eax
mov edx, eax
add esp, 4
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x54c], 0
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0xffffffffffffffff
push 0x8b
push eax
call dword [ecx + 0xe4]
mov al, byte [ebx + 9]
test al, al
je 0x4472c8
mov eax, dword [ebx + 0x13fecc]
test eax, eax
je 0x4472c8
push 0x42c80000
call fcn.005949a0
add esp, 4
push 0x42480000
jmp 0x4472ff
push 0x43c80000
call fcn.005949a0
mov ecx, dword [0x705814]
add esp, 4
test ecx, ecx
je 0x4472fa
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4472fa
cmp byte [0x709480], 1
jne 0x4472fa
push 0x461c4000
jmp 0x4472ff
push 0x43c80000
mov ecx, 0x21f8bf8
call fcn.0059ac80
lea ecx, [ebx + 0x13cc3c]
call fcn.00591e70
push 0x21f8cd4
lea eax, [esp + 0x34]
push eax
lea ecx, [ebx + 0x13d374]
call fcn.00595820
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x447397
mov esi, dword [eax + 4]
test esi, esi
je 0x447397
fld dword [esi + 0x9c]
mov eax, dword [0x21f43a8]
fst dword [0x21f437c]
push 0x21f4360
fstp dword [0x21f436c]
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [0x7095a4]
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + 0xc]
inc edx
mov dword [0x7095a4], edx
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x447393
mov esi, dword [eax + 4]
test esi, esi
jne 0x447340
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x4473ca
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x4473a3
lea edx, [esp + 0x30]
mov ecx, edx
mov eax, edx
mov dword [esp + 0x40], ecx
lea ecx, [ebx + 0x13cc3c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
call fcn.005921d0
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 0xff808080
push 0x8b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x89
push eax
call dword [ecx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 1
push 0
push eax
call dword [edx + 0xd4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x91
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
mov edi, 4
push edi
push edi
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 6
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 1
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push edi
push 1
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push edi
push 1
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 2
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 3
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0xf
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0x50
push 0x18
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 7
push 0x19
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x93
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x91
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0
push eax
call dword [edx + 0xd4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 1
push eax
call dword [ecx + 0x104]
fld dword [0x705f54]
fmul dword [esp + 0x14]
fmul dword [0x6a8690]
call fcn.005ba9a8
push eax
lea ecx, [ebx + 0x13d6d8]
call fcn.0041e7b0
mov al, byte [ebx + 9]
test al, al
je 0x4475ca
mov eax, dword [ebx + 0x13fecc]
test eax, eax
je 0x4475ca
push 0x42c80000
call fcn.005949a0
add esp, 4
push 0x42480000
mov ecx, 0x21f8bf8
call fcn.0059ac80
jmp 0x44761d
mov ecx, dword [0x705814]
test ecx, ecx
je 0x4475fe
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4475fe
cmp byte [0x709480], 1
jne 0x4475fe
push 0x461c4000
mov ecx, 0x21f8bf8
call fcn.0059ac80
push 0x461c4000
jmp 0x447615
mov eax, dword [0x705d98]
push eax
mov ecx, 0x21f8bf8
call fcn.0059ac80
mov ecx, dword [0x705d98]
push ecx
call fcn.005949a0
add esp, 4
push 0x21f8cd4
lea edx, [esp + 0x34]
push edx
lea ecx, [ebx + 0x13d02c]
call fcn.00595820
push 0x21f8cd4
lea eax, [esp + 0x34]
push eax
lea ecx, [ebx + 0x13d0b8]
call fcn.00595820
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x447701
mov esi, dword [eax + 4]
test esi, esi
je 0x447701
jmp 0x447670
fld dword [esi + 0x9c]
mov eax, dword [0x21f43a8]
fst dword [0x21f437c]
push 0x21f4360
fstp dword [0x21f436c]
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
fld dword [0x6a92f8]
fld dword [esi + 0x9c]
fucompp
fnstsw ax
test ah, 0x44
mov eax, dword [0x21f3f98]
jp 0x4476be
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0xe4]
jmp 0x4476cb
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [0x7095b4]
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + 0xc]
inc edx
mov dword [0x7095b4], edx
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x4476fd
mov esi, dword [eax + 4]
test esi, esi
jne 0x447670
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x447737
lea ecx, [ecx]
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x447710
lea edx, [esp + 0x30]
mov eax, edx
mov dword [esp + 0x3c], eax
mov eax, dword [0x21f43a8]
mov ecx, edx
push 0x21f4360
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], ecx
mov dword [0x21f437c], 0x3f800000
mov dword [0x21f436c], 0x3f800000
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
fld dword [0x705f54]
fmul dword [esp + 0x14]
fmul dword [0x6a8690]
call fcn.005ba9a8
push eax
push 0x21f8cd4
lea ecx, [ebx + 0x13d740]
call fcn.005202a0
push 0x21f8cd4
lea ecx, [ebx + 0x13d7a0]
call fcn.00520410
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x16
push eax
call dword [ecx + 0xe4]
push 0x21f8cd4
lea edx, [esp + 0x34]
push edx
lea ecx, [ebx + 0x13d144]
call fcn.00595820
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x4478ad
mov esi, dword [eax + 4]
test esi, esi
je 0x4478ad
fld dword [esi + 0x9c]
mov eax, dword [0x21f43a8]
fst dword [0x21f437c]
push 0x21f4360
fstp dword [0x21f436c]
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
fld dword [esi + 0x9c]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 5
jp 0x447877
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0xe4]
jmp 0x44787e
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov eax, dword [esp + 0x40]
mov esi, dword [0x7095a4]
mov eax, dword [eax + 0xc]
inc esi
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [0x7095a4], esi
mov dword [esp + 0x40], eax
je 0x4478a9
mov esi, dword [eax + 4]
test esi, esi
jne 0x447812
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x4478e7
lea esp, [esp]
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x4478c0
lea edx, [esp + 0x30]
mov ecx, edx
mov eax, edx
mov dword [esp + 0x38], edx
push 0x21f8cd4
lea edx, [esp + 0x34]
mov dword [esp + 0x44], ecx
push edx
lea ecx, [ebx + 0x13d25c]
mov dword [esp + 0x44], eax
call fcn.00595820
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x44799d
mov esi, dword [eax + 4]
test esi, esi
je 0x44799d
jmp 0x447930
fld dword [esi + 0x9c]
mov eax, dword [0x21f43a8]
fst dword [0x21f437c]
push 0x21f4360
fstp dword [0x21f436c]
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
fld dword [0x705f54]
fmul dword [esp + 0x14]
fmul dword [0x6a8690]
call fcn.005ba9a8
push eax
mov ecx, esi
call fcn.00596cc0
mov eax, dword [esp + 0x40]
mov esi, dword [0x7095a4]
mov eax, dword [eax + 0xc]
inc esi
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [0x7095a4], esi
mov dword [esp + 0x40], eax
je 0x447999
mov esi, dword [eax + 4]
test esi, esi
jne 0x447930
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x4479d7
lea esp, [esp]
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x4479b0
lea edx, [esp + 0x30]
mov eax, edx
push 3
mov dword [esp + 0x40], eax
mov eax, dword [0x21f3f98]
mov ecx, edx
push 0x16
mov dword [esp + 0x40], edx
mov dword [esp + 0x48], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push edi
push edi
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov al, byte [ebx + 9]
test al, al
je 0x447ab8
mov eax, dword [ebx + 0x1402b8]
test eax, eax
je 0x447cd0
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 0
push 0x89
push eax
call dword [edx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0
push 0
push eax
call dword [ecx + 0xd4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 1
push 1
push 1
push eax
call dword [edx + 0x10c]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 1
push edi
push 1
push eax
call dword [ecx + 0x10c]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 0
push 0
push eax
call dword [edx + 0x104]
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov ecx, dword [eax]
push 0
push 1
push eax
call dword [ecx + 0x104]
push 0
mov ecx, 0x21f3fa0
call fcn.0052c380
mov eax, dword [0x705d6c]
test eax, eax
je 0x447be0
mov edx, dword [0x70594c]
mov al, byte [edx + 0x1d0]
test al, al
jne 0x447c83
mov eax, dword [0x6f3560]
mov ecx, dword [0x6f355c]
push eax
lea esi, [ebx + 0x14009c]
push ecx
mov ecx, esi
call fcn.0059dc80
fld dword [0x21f8bfc]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jp 0x447c1d
mov al, byte [0x7095e9]
test al, al
jne 0x447c1d
push 0xc805020f
jmp 0x447c75
fld dword [0x6a92f8]
fsub dword [ebx + 0x140048]
fmul dword [str.333_33]
fst dword [esp + 0x58]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 1
jne 0x447c47
mov eax, 0xff
jmp 0x447c71
fld dword [esp + 0x58]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jp 0x447c5c
xor eax, eax
jmp 0x447c71
fld dword [esp + 0x58]
fmul dword [0x6a961c]
fadd dword [0x6a95b8]
call fcn.005ba9a8
shl eax, 0x18
push eax
mov ecx, esi
call fcn.0059dcf0
mov ecx, esi
call fcn.0059dd90
push 1
mov ecx, 0x21f3fa0
call fcn.0052c380
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, dword [ebx + 0x14004c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push ecx
push 0x8b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x93
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x91
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f43a8]
push 0x21f4360
mov dword [0x21f437c], 0x3f800000
mov dword [0x21f436c], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0
push eax
call dword [edx + 0xd4]
mov ecx, 0x21f3fa0
call fcn.0052d3b0
mov al, byte [ebx + 9]
test al, al
je 0x447d82
mov ecx, dword [0x705814]
test ecx, ecx
je 0x447d7b
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x447d7b
cmp byte [0x709480], 1
jne 0x447d7b
push 0x461c4000
jmp 0x447d89
push 0x42480000
jmp 0x447d89
mov ecx, dword [0x705da0]
push ecx
mov ecx, 0x21f8bf8
call fcn.0059ac80
mov eax, dword [ebx + 0x13d88c]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [ebx + 0x13d894]
mov dword [esi], ecx
je 0x447f01
jmp 0x447db0
mov edx, dword [esi]
mov esi, dword [edx + 0x10]
test esi, esi
mov dword [esp + 0x1c], esi
je 0x447ee6
lea ecx, [esp + 0x4c]
call fcn.0059e710
fld dword [esi + 0x24]
mov ecx, dword [esi + 0x28]
fadd dword [0x6a92f8]
mov eax, dword [esi + 0x20]
lea edx, [esp + 0x4c]
mov dword [esp + 0x54], ecx
fstp dword [esp + 0x50]
push edx
mov ecx, 0x21f8cd4
mov dword [esp + 0x50], eax
mov dword [esp + 0x5c], 0x3f800000
call fcn.00438720
test al, al
je 0x447ee6
mov eax, dword [esi + 0x48]
test eax, eax
je 0x447ed4
mov eax, dword [0x21f43a8]
mov ecx, 0x11
mov esi, 0x21f4360
lea edi, [esp + 0x1a0]
rep movsd dword es:[edi], dword [esi]
push 0x21f4360
mov dword [0x21f4370], 0x3f800000
mov dword [0x21f4360], 0x3f800000
mov dword [0x21f4374], 0
mov dword [0x21f4364], 0
mov dword [0x21f4378], 0
mov dword [0x21f4368], 0
mov dword [0x21f437c], 0x3f800000
mov dword [0x21f436c], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc4]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push edx
call fcn.00427920
mov ecx, 0x11
lea esi, [esp + 0x1a0]
mov edi, 0x21f4360
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x21f43a8]
push 0x21f4360
mov dword [0x21f437c], 0x3f800000
mov dword [0x21f436c], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc4]
mov edi, 4
jmp 0x447ee0
mov edx, dword [esp + 0x14]
push edx
mov ecx, esi
call fcn.00427920
inc dword [0x7095ac]
lea esi, [ebx + 0x13d894]
mov ecx, esi
call fcn.0040bbe0
mov eax, dword [esi]
cmp eax, dword [ebx + 0x13d88c]
jne 0x447db0
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
push 1
lea ecx, [esp + 0xb8]
push ecx
push 0
mov dword [esp + 0xc0], 0x3f800000
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0x443f40a4
mov edx, dword [eax]
push eax
call dword [edx + 0x178]
mov dword [esp + 0x4c], 0x3f800000
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xb4], edx
mov dword [esp + 0x58], 0x41a00000
mov edx, dword [esp + 0x58]
mov dword [esp + 0xc0], edx
push 1
lea edx, [esp + 0xb8]
mov dword [esp + 0x54], 0x3f800000
mov eax, dword [esp + 0x54]
push edx
mov dword [esp + 0xc0], eax
mov eax, dword [0x21f3f98]
mov dword [esp + 0x5c], 0x3f800000
mov ecx, dword [esp + 0x5c]
push 9
mov dword [esp + 0xc8], ecx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x178]
mov edx, dword [0x21f4368]
mov eax, dword [0x21f4360]
mov ecx, dword [0x21f4364]
mov dword [esp + 0x190], eax
mov eax, dword [0x21f436c]
mov dword [esp + 0x198], edx
lea edx, [esp + 0xf4]
push edx
mov dword [esp + 0x1a0], eax
mov eax, dword [0x21f3f98]
push 0x8b
mov dword [esp + 0x19c], ecx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xe8]
mov eax, dword [esp + 0xf4]
mov ecx, eax
shr ecx, 0x10
movzx edx, cl
mov dword [esp + 0x1c], edx
mov ecx, eax
shr ecx, 8
fild dword [esp + 0x1c]
movzx edx, cl
fmul dword [0x6aae5c]
mov dword [esp + 0x1c], edx
movzx ecx, al
fstp dword [esp + 0x4c]
fild dword [esp + 0x1c]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
shr eax, 0x18
fmul dword [0x6aae5c]
mov dword [esp + 0x7c], edx
fstp dword [esp + 0x50]
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x50]
fmul dword [0x6aae5c]
fstp dword [esp + 0x54]
fild dword [esp + 0x1c]
fmul dword [0x6aae5c]
fstp dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xac], edx
push 1
lea edx, [esp + 0x194]
push edx
mov dword [esp + 0xac], eax
mov eax, dword [0x21f3f98]
push 7
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xbc], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0x178]
fld dword [0x21f8bfc]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jp 0x448145
mov dword [esp + 0x4c], 0x3ec2c2bd
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x50], 0x3f028284
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x54], 0x3f09898b
mov edx, dword [esp + 0x54]
mov dword [esp + 0x58], 0x3f800000
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], eax
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x1b
push eax
call dword [edx + 0xe4]
push 0x3f800000
push 0x3f800000
push 0x3f800000
push 0x21f415c
call fcn.005d2f8f
mov eax, dword [ebx + 0x13d83c]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x13d844], ecx
je 0x4481c2
mov eax, dword [ebx + 0x13d844]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4481a8
push 1
call fcn.0040daf0
mov ecx, dword [ebx + 0x13d844]
mov edx, dword [ecx]
mov dword [ebx + 0x13d844], edx
mov ecx, dword [ebx + 0x13d83c]
mov eax, edx
cmp eax, ecx
jne 0x448194
mov eax, dword [ebx + 0x13d8a0]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x13d8a8], ecx
je 0x4483d3
jmp 0x4481e0
mov ecx, dword [ebx + 0x13d8a8]
mov esi, dword [ecx + 0x10]
test esi, esi
je 0x44835f
mov eax, dword [esi + 0x90]
test eax, eax
je 0x44835f
mov ecx, esi
call fcn.00431330
cmp dword [esi + 0x4c], edi
je 0x448359
mov eax, dword [0x705d70]
test eax, eax
je 0x448359
fld dword [esi + 0xe8]
fcomp dword [0x705da4]
fnstsw ax
test ah, 0x41
je 0x448332
mov al, byte [ebx + 9]
test al, al
jne 0x448332
mov ecx, esi
call fcn.004306a0
test eax, eax
je 0x448359
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 6
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 7
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 4]
push 0x3c23d70a
push eax
push ecx
lea ecx, [ebx + 0xc]
call fcn.00591350
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xb
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x18
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 1
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 2
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 3
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov ecx, 0x21f3fa0
call fcn.0052d3b0
jmp 0x448359
add esi, 4
mov ecx, dword [esi]
mov edx, dword [esi + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esi + 8]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
push 0x3f000000
mov ecx, 0x6f5a04
call fcn.00533340
inc dword [0x7095b8]
mov eax, dword [ebx + 0x13d8a8]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x4483c1
mov ecx, dword [eax + 8]
mov dl, byte [ecx + 0x15]
test dl, dl
jne 0x448393
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
jne 0x44838b
nop
mov ecx, eax
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
je 0x448380
mov dword [ebx + 0x13d8a8], ecx
jmp 0x4483c1
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x4483bb
lea ecx, [ecx]
mov edx, dword [ebx + 0x13d8a8]
cmp edx, dword [eax + 8]
jne 0x4483bb
mov dword [ebx + 0x13d8a8], eax
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x4483a0
mov dword [ebx + 0x13d8a8], eax
mov ecx, dword [ebx + 0x13d8a8]
cmp ecx, dword [ebx + 0x13d8a0]
jne 0x4481e0
push 0x3f800000
push 0x3f800000
push 0x3f800000
push 0x21f415c
call fcn.005d2f8f
mov eax, dword [ebx + 0x13d8b4]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x13d8bc], ecx
je 0x448605
mov edx, dword [ebx + 0x13d8bc]
mov esi, dword [edx + 0x10]
test esi, esi
je 0x448592
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x448592
mov ecx, esi
call fcn.00433520
cmp dword [esi + 0x80], edi
je 0x44858c
mov eax, dword [0x705d70]
test eax, eax
je 0x44858c
mov eax, dword [esi + 0x124]
test eax, eax
je 0x44858c
fld dword [esi + 0x100]
fcomp dword [0x705da4]
fnstsw ax
test ah, 0x41
je 0x448565
mov al, byte [ebx + 9]
test al, al
jne 0x448565
mov ecx, esi
call fcn.004329a0
test eax, eax
je 0x44858c
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 7
push 0
push eax
call dword [ecx + 0x114]
mov edx, dword [esi + 0x40]
mov eax, dword [esi + 0x38]
push 0x3c23d70a
push edx
push eax
lea ecx, [ebx + 0xc]
call fcn.00591350
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xb
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x18
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 2
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 3
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, 0x21f3fa0
call fcn.0052d3b0
jmp 0x44858c
add esi, 0x38
mov eax, dword [esi]
mov ecx, dword [esi + 4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esi + 8]
mov dword [edx + 4], ecx
push 0x3e99999a
mov ecx, 0x6f5a04
mov dword [edx + 8], eax
call fcn.00533340
inc dword [0x7095b8]
mov eax, dword [ebx + 0x13d8bc]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x4485f3
mov ecx, dword [eax + 8]
mov dl, byte [ecx + 0x15]
test dl, dl
jne 0x4485c5
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
jne 0x4485bd
mov ecx, eax
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
je 0x4485b2
mov dword [ebx + 0x13d8bc], ecx
jmp 0x4485f3
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x4485ed
nop
mov ecx, dword [ebx + 0x13d8bc]
cmp ecx, dword [eax + 8]
jne 0x4485ed
mov dword [ebx + 0x13d8bc], eax
mov edx, eax
mov eax, dword [edx + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x4485d0
mov dword [ebx + 0x13d8bc], eax
mov eax, dword [ebx + 0x13d8bc]
cmp eax, dword [ebx + 0x13d8b4]
jne 0x448402
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov edx, dword [0x21f4300]
mov eax, dword [edx + 4]
test eax, eax
jne 0x448637
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0x112
push eax
call dword [ecx + 0x164]
mov eax, dword [ebx + 0x13d878]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x13d880], ecx
je 0x448975
lea ecx, [ecx]
mov edx, dword [ebx + 0x13d880]
mov esi, dword [edx + 0x10]
test esi, esi
je 0x4488fb
mov eax, dword [esi + 0x16c]
test eax, eax
je 0x4488fb
mov eax, dword [esi + 0x27c]
test eax, eax
mov edi, 1
je 0x44869f
mov cl, byte [0x21e8d7a]
cmp cl, byte [esi + 0x276]
je 0x44868e
xor edi, edi
test eax, eax
je 0x44869f
cmp byte [esi + 0x28c], 1
je 0x4488fb
test edi, edi
je 0x4488fb
mov edx, dword [ebx + 0x13fecc]
mov eax, dword [esi + 0x34]
cmp eax, dword [edx + 0x34]
je 0x4488fb
fld dword [esi + 0x14]
mov eax, dword [esi + 0x170]
fsub dword [0x6a95c0]
test eax, eax
fstp dword [esi + 0x14]
mov eax, dword [0x21f3f98]
je 0x44870f
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov dword [esp + 0x4c], 0x3f800000
mov dword [esp + 0x50], 0x3f800000
mov dword [esp + 0x54], 0x3f800000
mov dword [esp + 0x58], 0x3f800000
lea ecx, [esp + 0x4c]
jmp 0x448716
lea ecx, [esp + 0xa4]
mov edx, dword [eax]
push 1
push ecx
push 8
push eax
call dword [edx + 0x178]
mov ecx, esi
call fcn.00697fa0
mov ecx, esi
call fcn.00413360
mov ecx, esi
call fcn.00697fa0
fld dword [esi + 0x14]
fadd dword [0x6a95c0]
lea edi, [esi + 0x10]
mov edx, edi
fstp dword [esi + 0x14]
mov eax, dword [edx]
mov dword [esp + 0x20], eax
mov eax, dword [edx + 4]
mov ecx, dword [edx + 8]
mov dword [esp + 0x28], ecx
mov cl, byte [ebx + 9]
test cl, cl
je 0x448779
mov edx, dword [esp + 0x28]
push edx
push eax
mov eax, dword [esp + 0x28]
push eax
lea ecx, [ebx + 0x13cc3c]
call fcn.00592bc0
jmp 0x44878b
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push ecx
push edx
lea ecx, [ebx + 0xc]
call fcn.00590a50
mov al, byte [esi + 0x279]
fstp dword [esp + 0x24]
cmp al, 2
jae 0x4488f5
mov eax, dword [esi + 0x27c]
test eax, eax
jne 0x4488f5
mov eax, dword [0x705d70]
test eax, eax
je 0x4488f5
fld dword [esi + 0x2b0]
fcomp dword [0x705da4]
fnstsw ax
test ah, 0x41
je 0x4488cd
mov al, byte [ebx + 9]
test al, al
jne 0x4488cd
mov ecx, esi
call fcn.0040e280
test eax, eax
je 0x4488f5
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 7
push 0
push eax
call dword [ecx + 0x114]
mov edx, dword [esi + 0x18]
mov eax, dword [edi]
push 0x3c23d70a
push edx
push eax
lea ecx, [ebx + 0xc]
call fcn.00591350
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xb
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x18
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 2
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 3
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, 0x21f3fa0
call fcn.0052d3b0
jmp 0x4488f5
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x34]
mov dword [edx + 4], ecx
push 0x3e99999a
mov ecx, 0x6f5a04
mov dword [edx + 8], eax
call fcn.00533340
inc dword [0x7095a0]
mov eax, dword [ebx + 0x13d880]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x448963
mov ecx, dword [eax + 8]
mov dl, byte [ecx + 0x15]
test dl, dl
jne 0x448933
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
jne 0x44892b
jmp 0x448920
mov ecx, eax
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
je 0x448920
mov dword [ebx + 0x13d880], ecx
jmp 0x448963
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x44895d
lea ecx, [ecx]
mov ecx, dword [ebx + 0x13d880]
cmp ecx, dword [eax + 8]
jne 0x44895d
mov dword [ebx + 0x13d880], eax
mov edx, eax
mov eax, dword [edx + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x448940
mov dword [ebx + 0x13d880], eax
mov eax, dword [ebx + 0x13d880]
cmp eax, dword [ebx + 0x13d878]
jne 0x448650
mov eax, dword [ebx + 0x13d8c8]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x13d8d0], ecx
je 0x448ab3
jmp 0x448990
mov ecx, dword [ebx + 0x13d8d0]
mov esi, dword [ecx + 0x10]
test esi, esi
je 0x448a42
mov eax, dword [esi + 0x16c]
test eax, eax
je 0x448a42
mov eax, dword [esi + 0x2ac]
test eax, eax
je 0x448a09
mov edi, dword [esi + 0xc0]
test edi, edi
je 0x448a42
mov eax, dword [edi + 0x14]
test eax, eax
mov edx, dword [esi + 0xcc]
mov dword [esp + 0x18], edx
je 0x448a42
mov eax, edx
test eax, eax
jl 0x448a42
cmp eax, dword [edi + 4]
jge 0x448a42
mov ecx, dword [edi + 0x18]
mov ecx, dword [ecx + edx*4]
test ecx, ecx
je 0x448a42
call fcn.0053d170
test eax, eax
je 0x448a42
mov eax, dword [edi + 0x18]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x448a42
fild dword [eax + 4]
fstp dword [esi + 0xc8]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
lea ecx, [esp + 0xa8]
push ecx
push 8
push eax
call dword [edx + 0x178]
fld dword [esi + 0x14]
fsub dword [0x6a95c0]
mov ecx, esi
fstp dword [esi + 0x14]
call fcn.00413360
fld dword [esi + 0x14]
fadd dword [0x6a95c0]
fstp dword [esi + 0x14]
mov eax, dword [ebx + 0x13d8d0]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x448aa1
mov ecx, dword [eax + 8]
mov dl, byte [ecx + 0x15]
test dl, dl
jne 0x448a75
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
jne 0x448a6d
mov ecx, eax
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
je 0x448a62
mov dword [ebx + 0x13d8d0], ecx
jmp 0x448aa1
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x448a9b
nop
mov edx, dword [ebx + 0x13d8d0]
cmp edx, dword [eax + 8]
jne 0x448a9b
mov dword [ebx + 0x13d8d0], eax
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x448a80
mov dword [ebx + 0x13d8d0], eax
mov ecx, dword [ebx + 0x13d8d0]
cmp ecx, dword [ebx + 0x13d8c8]
jne 0x448990
mov ecx, dword [ebx + 0x13fecc]
test ecx, ecx
je 0x448dc0
mov eax, dword [0x705dc8]
test eax, eax
jne 0x448dc0
call fcn.00697fa0
mov eax, dword [ebx + 0x13fecc]
fld dword [eax + 0x14]
fsub dword [0x6a95c0]
fstp dword [eax + 0x14]
mov edx, dword [ebx + 0x13fecc]
mov eax, dword [edx + 0x170]
test eax, eax
mov eax, dword [0x21f3f98]
je 0x448b35
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov dword [esp + 0x4c], 0x3f800000
mov dword [esp + 0x50], 0x3f800000
mov dword [esp + 0x54], 0x3f800000
mov dword [esp + 0x58], 0x3f800000
lea ecx, [esp + 0x4c]
jmp 0x448b3c
lea ecx, [esp + 0xa4]
mov edx, dword [eax]
push 1
push ecx
push 8
push eax
call dword [edx + 0x178]
mov ecx, dword [ebx + 0x13fecc]
call fcn.00413360
mov eax, dword [ebx + 0x13fecc]
fld dword [eax + 0x14]
fadd dword [0x6a95c0]
fstp dword [eax + 0x14]
mov ecx, dword [ebx + 0x13fecc]
cmp byte [ecx + 0x279], 2
jae 0x448daa
mov eax, dword [ecx + 0x27c]
test eax, eax
jne 0x448daa
mov eax, dword [ecx + 0x170]
test eax, eax
je 0x448c5e
mov al, byte [ebx + 9]
test al, al
jne 0x448c5e
mov edx, dword [ecx + 0x10]
mov dword [0x21f4090], edx
mov eax, dword [ebx + 0x13fecc]
fld dword [eax + 0x14]
fsub dword [0x6a95c0]
fstp dword [0x21f4094]
mov ecx, dword [ebx + 0x13fecc]
mov edx, dword [ecx + 0x18]
mov ecx, 0x6f59f8
mov dword [0x21f4098], edx
call fcn.00532d30
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 6
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xf
push eax
call dword [ecx + 0xe4]
jmp 0x448cc1
mov eax, dword [0x705d70]
test eax, eax
je 0x448daa
mov al, byte [ebx + 9]
test al, al
je 0x448cb4
add ecx, 0x10
mov esi, dword [ecx]
mov eax, dword [ecx + 4]
mov edi, dword [ecx + 8]
push edi
push eax
push esi
lea ecx, [ebx + 0x13cc3c]
call fcn.00592bc0
fstp dword [esp + 0x50]
mov eax, dword [esp + 0x50]
sub esp, 0xc
mov edx, esp
mov dword [edx], esi
mov dword [edx + 4], eax
push 0x3e99999a
mov ecx, 0x6f5a04
mov dword [edx + 8], edi
call fcn.00533340
jmp 0x448daa
call fcn.0040e280
test eax, eax
je 0x448daa
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [ebx + 0x13fecc]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x10]
push 0x3c23d70a
push edx
push eax
lea ecx, [ebx + 0xc]
call fcn.00591350
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xb
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x18
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 2
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 3
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, 0x21f3fa0
call fcn.0052d3b0
mov eax, dword [0x7095a0]
mov ecx, dword [ebx + 0x13fecc]
inc eax
mov dword [0x7095a0], eax
call fcn.00697fa0
push 0x3f800000
push 0x3f800000
push 0x3f800000
push 0x21f415c
call fcn.005d2f8f
mov ecx, 0x21f3fa0
call fcn.0052bac0
mov ecx, dword [0x705814]
mov edx, dword [ecx]
push 0x25
call dword [edx + 4]
test al, al
je 0x448fac
mov eax, dword [0x84957c]
test eax, eax
je 0x448e0b
mov ecx, 0x21f1d78
call fcn.00523d20
mov eax, dword [ebx + 0x13fecc]
test eax, eax
je 0x448fac
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x2b0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb4]
fld dword [0x21f8c34]
fld dword [0x21f8c3c]
mov eax, dword [ebx + 0x13fecc]
fld st(0)
sub esp, 0xc
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fdivr dword [0x6a92f8]
fxch st(2)
fmul st(2)
fstp dword [esp + 0x2c]
fmul st(1)
fstp dword [esp + 0x34]
fstp st(0)
fld dword [esp + 0x2c]
fmul dword [0x6a9608]
fld dword [esp + 0x34]
fmul dword [0x6a9608]
fadd dword [eax + 0x18]
fstp dword [esp + 8]
fld dword [eax + 0x14]
fadd dword [0x6a95ec]
fstp dword [esp + 4]
fadd dword [eax + 0x10]
lea eax, [esp + 0x15c]
fstp dword [esp]
push eax
call fcn.005d3023
fld dword [esp + 0x20]
fmul dword [0x6a95f0]
mov eax, dword [ebx + 0x13fecc]
fld dword [esp + 0x28]
sub esp, 0xc
fmul dword [0x6a95f0]
lea ecx, [esp + 0x27c]
fadd dword [eax + 0x18]
fstp dword [esp + 8]
fld dword [eax + 0x14]
fadd dword [0x6a95ec]
fstp dword [esp + 4]
fadd dword [eax + 0x10]
fstp dword [esp]
push ecx
call fcn.005d3023
mov eax, dword [0x84957c]
test eax, eax
je 0x448f3f
mov ecx, dword [ebx + 0x142124]
test ecx, ecx
je 0x448f3f
lea edx, [esp + 0x270]
push edx
call fcn.005181f0
mov ecx, dword [0x21f3f98]
mov edx, dword [0x705f54]
lea eax, [ebx + 0xc]
push eax
push ecx
mov ecx, dword [ebx + 0x142124]
push edx
call fcn.00518320
mov eax, dword [0x21f3f98]
mov ecx, dword [0x705f54]
push eax
push ecx
mov ecx, dword [ebx + 0x142124]
call fcn.00518260
lea esi, [ebx + 0x14210c]
mov edi, 6
lea ebx, [ebx]
mov ecx, dword [esi]
test ecx, ecx
je 0x448fa6
lea edx, [esp + 0x150]
push edx
call fcn.005181f0
mov eax, dword [0x21f3f98]
mov ecx, dword [0x705f54]
push eax
push ecx
mov ecx, dword [esi]
call fcn.005182e0
mov edx, dword [0x21f3f98]
mov eax, dword [0x705f54]
mov ecx, dword [esi]
push edx
push eax
call fcn.00518260
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x2b0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
add esi, 4
dec edi
jne 0x448f50
mov eax, dword [0x705d6c]
test eax, eax
je 0x448fd0
cmp byte [0x709480], 6
jne 0x448fd0
mov al, byte [ebx + 9]
test al, al
jne 0x448fd0
mov ecx, dword [0x70594c]
call fcn.0052a510
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 2
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 3
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 1
push 1
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 4
push 1
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x93
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x91
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x705d6c]
test eax, eax
jne 0x4494fa
mov al, byte [ebx + 9]
test al, al
jne 0x4494fa
push 0xa0
call dword [0x6a84d8]
test ax, ax
jne 0x449487
mov ecx, dword [0x705814]
test ecx, ecx
je 0x449487
mov edx, dword [ecx]
push 0x23
call dword [edx + 4]
test al, al
je 0x449487
mov eax, dword [ebx + 0x1420fc]
test eax, eax
je 0x449487
mov eax, dword [ebx + 0x142100]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x449487
mov ecx, dword [ebx + 0x142108]
mov eax, dword [ecx + 4]
test eax, eax
je 0x449487
lea edx, [esp + 0x150]
push edx
mov ecx, 0x10
mov esi, 0x21f8c40
lea edi, [esp + 0x154]
rep movsd dword es:[edi], dword [esi]
push 0
lea eax, [esp + 0x2b8]
mov ecx, 0x10
mov esi, 0x21f8c94
lea edi, [esp + 0x378]
push eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0x42c80000
mov dword [esp + 0x90], 0x44fa0000
mov dword [esp + 0x94], 0
rep movsd dword es:[edi], dword [esi]
call fcn.005d2bb2
mov ebx, dword [esp + 0x2c]
lea ecx, [esp + 0x2b0]
push ecx
add ebx, 0x1402ec
push str.ViewIXf
mov ecx, ebx
call fcn.00527c50
lea edx, [esp + 0x7c]
push edx
push str.fvLightPosition
mov ecx, ebx
call fcn.00527c30
mov esi, dword [esp + 0x2c]
mov eax, dword [esi + 0x142100]
mov ecx, dword [eax + 4]
push ecx
push str.normalMap
mov ecx, ebx
call fcn.00527c70
mov edx, dword [esi + 0x142108]
mov eax, dword [edx + 4]
push eax
push 0x6aba2c
mov ecx, ebx
call fcn.00527c70
mov edi, dword [esi + 0x13fecc]
test edi, edi
je 0x449210
fld dword [edi + 0x10]
fmul dword [0x6aba28]
call fcn.005ba9a8
fld dword [edi + 0x18]
fmul dword [0x6aba28]
jmp 0x449221
fld dword [0x852b1c]
call fcn.005ba9a8
fld dword [0x852b24]
mov esi, eax
call fcn.005ba9a8
fld qword [0x6aba20]
fsqrt
lea ecx, [eax - 1]
add eax, 2
cmp ecx, eax
fmul dword [0x6a95b8]
fstp dword [esp + 0xa0]
jge 0x4494fa
mov edx, ecx
imul edx, edx, 0x12c
lea edi, [esi - 1]
add esi, 2
sub eax, ecx
mov dword [esp + 0x70], edi
mov dword [esp + 0x9c], esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
mov edi, edi
mov eax, dword [esp + 0x9c]
cmp edi, eax
jge 0x449468
mov ecx, dword [esp + 0x18]
mov esi, edi
imul esi, esi, 0x12c
add ecx, 0x96
mov dword [esp + 0x78], ecx
sub eax, edi
mov dword [esp + 0x8c], esi
fild dword [esp + 0x78]
mov dword [esp + 0x78], eax
fstp dword [esp + 0x74]
lea ebx, [ebx]
lea ecx, [esp + 0x4c]
call fcn.0059e710
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x74]
lea eax, [esi + 0x96]
mov dword [esp + 0x140], eax
fild dword [esp + 0x140]
mov dword [esp + 0x58], edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], 0
fstp dword [esp + 0x4c]
xor edx, edx
mov ecx, 0x21f8cd8
fld dword [esp + 0x54]
fmul dword [ecx + 4]
fld dword [esp + 0x4c]
fmul dword [ecx - 4]
faddp st(1)
fld dword [ecx]
fmul dword [0x6a867c]
faddp st(1)
fadd dword [ecx + 8]
fcomp dword [esp + 0xa0]
fnstsw ax
test ah, 0x41
je 0x44932c
add ecx, 0x10
inc edx
cmp ecx, 0x21f8d38
jl 0x4492f3
jmp 0x449339
test edx, edx
jle 0x449339
cmp edx, 1
jne 0x44944c
fild dword [esp + 0x18]
push ecx
lea edx, [esp + 0x274]
fstp dword [esp]
push 0
fild dword [esp + 0x94]
push ecx
fstp dword [esp]
push edx
call fcn.005d3023
lea eax, [esp + 0x150]
push eax
lea ecx, [esp + 0x274]
push ecx
lea edx, [esp + 0x400]
push edx
call fcn.005d268c
mov ecx, 0x10
lea esi, [esp + 0x3f8]
lea edi, [esp + 0x2f0]
lea eax, [esp + 0x370]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0x2f4]
push ecx
lea edx, [esp + 0x338]
push edx
call fcn.005d268c
mov ecx, 0x10
lea esi, [esp + 0x330]
lea edi, [esp + 0x230]
lea eax, [esp + 0x150]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0x274]
push ecx
lea edx, [esp + 0x1f8]
push edx
call fcn.005d268c
lea eax, [esp + 0x270]
mov ecx, 0x10
lea esi, [esp + 0x1f0]
lea edi, [esp + 0x1a0]
push eax
rep movsd dword es:[edi], dword [esi]
push str.WorldXf
mov ecx, ebx
call fcn.00527c50
lea ecx, [esp + 0x230]
push ecx
push str.WVPXf
mov ecx, ebx
call fcn.00527c50
lea edx, [esp + 0x1a0]
push edx
push 0x6aba00
mov ecx, ebx
call fcn.00527c50
mov eax, dword [0x21f3f98]
mov ecx, dword [0x705f54]
push eax
push ecx
mov ecx, ebx
call fcn.00527ac0
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x78]
add esi, 0x12c
dec eax
mov dword [esp + 0x8c], esi
mov dword [esp + 0x78], eax
jne 0x4492b0
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
add ecx, 0x12c
dec eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
jne 0x449270
jmp 0x4494fa
fld dword [0x21f4064]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jp 0x4494dd
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
fld dword [0x705f54]
fmul dword [0x6ab9fc]
call fcn.005ba9a8
push eax
lea ecx, [ebx + 0x13cfe0]
call fcn.00597d20
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
jmp 0x4494fa
fld dword [0x705f54]
fmul dword [0x6ab9fc]
call fcn.005ba9a8
push eax
lea ecx, [ebx + 0x13cfe0]
call fcn.00597d20
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 0
push 0
push eax
call dword [edx + 0xd4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0x93
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x91
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x705814]
test ecx, ecx
je 0x449615
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x449615
cmp byte [0x709480], 1
jne 0x449615
push 0x461c4000
mov ecx, 0x21f8bf8
call fcn.0059ac80
push 0x461c4000
jmp 0x44962c
mov eax, dword [0x705d9c]
push eax
mov ecx, 0x21f8bf8
call fcn.0059ac80
mov ecx, dword [0x705d9c]
push ecx
call fcn.005949a0
mov edi, dword [esp + 0x30]
add esp, 4
push 0x21f8cd4
lea edx, [esp + 0x34]
push edx
lea ecx, [edi + 0x13d2e8]
call fcn.00595820
push 0x21f8cd4
lea eax, [esp + 0x34]
push eax
lea ecx, [edi + 0x13d1d0]
call fcn.00595820
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x4496ef
mov esi, dword [eax + 4]
test esi, esi
je 0x4496ef
lea ecx, [ecx]
fld dword [esi + 0x9c]
mov eax, dword [0x21f43a8]
fst dword [0x21f437c]
push 0x21f4360
fstp dword [0x21f436c]
mov edx, dword [eax]
push eax
call dword [edx + 0xc4]
fld dword [0x705f54]
fmul dword [esp + 0x14]
mov ebx, dword [esi]
fmul dword [0x6a8690]
call fcn.005ba9a8
push eax
mov ecx, esi
call dword [ebx]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [0x7095b0]
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + 8]
inc edx
mov dword [0x7095b0], edx
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x4496ef
mov esi, dword [eax + 4]
test esi, esi
jne 0x449680
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x40], eax
je 0x449727
nop
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x449700
lea edx, [esp + 0x30]
mov ecx, edx
mov eax, edx
mov dword [esp + 0x40], ecx
mov ecx, 0x21f3fa0
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
call fcn.0052bac0
call fcn.0059b2c0
mov eax, dword [eax + 4]
mov edx, dword [eax]
push 1
push 0
push eax
call dword [edx + 0xd4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
mov al, byte [edi + 9]
test al, al
je 0x449784
mov eax, dword [edi + 0x13fecc]
test eax, eax
je 0x449784
push 0x42480000
jmp 0x4497ae
mov ecx, dword [0x705814]
test ecx, ecx
je 0x4497a9
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4497a9
cmp byte [0x709480], 1
jne 0x4497a9
push 0x461c4000
jmp 0x4497ae
push 0x42c80000
mov ecx, 0x21f8bf8
call fcn.0059ac80
mov eax, dword [edi + 0x1401ec]
test eax, eax
je 0x449ca7
mov al, byte [edi + 9]
test al, al
jne 0x449ca7
mov eax, dword [edi + 0x13fecc]
mov ecx, dword [eax + 0x148]
mov dword [0x21f4090], ecx
mov edx, dword [edi + 0x13fecc]
mov eax, dword [edx + 0x14c]
mov dword [0x21f4094], eax
mov ecx, dword [edi + 0x13fecc]
mov edx, dword [ecx + 0x150]
mov ecx, dword [0x21f4094]
mov eax, edx
push eax
mov dword [0x21f4098], edx
mov edx, dword [0x21f4090]
push ecx
push edx
push 0x21f3fa0
call fcn.005d3023
push 0x3ca3d70a
push 0x3ca3d70a
mov ecx, 0x21f5668
call fcn.00532890
mov eax, dword [edi + 0x1401f8]
test eax, eax
je 0x449932
mov edx, dword [eax + 0xf0]
test edx, edx
je 0x4498b8
mov ecx, dword [eax + 0xf4]
sub ecx, edx
sar ecx, 2
test ecx, ecx
je 0x4498b8
mov esi, dword [eax + 0x104]
mov ecx, dword [eax + 0x1dac8]
imul esi, esi, 0x12c
mov ebx, dword [edx + ecx*4]
add esi, 0x21fa2a0
mov eax, dword [esi + 0xc]
test eax, eax
lea ecx, [edx + ecx*4]
jne 0x449888
mov ecx, esi
call fcn.00543400
test ebx, ebx
jl 0x44989b
cmp ebx, dword [esi + 8]
jge 0x44989b
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax + ebx*4]
test ebx, ebx
jne 0x4498af
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0
push eax
call dword [ecx + 0x104]
jmp 0x4498ca
mov ecx, ebx
call fcn.00527da0
jmp 0x4498ca
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0
push eax
call dword [edx + 0x104]
mov edx, dword [edi + 0x1401f8]
mov edx, dword [edx + 0xc8]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x13
push eax
call dword [ecx + 0xe4]
mov edx, dword [edi + 0x1401f8]
mov edx, dword [edx + 0xcc]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, dword [edi + 0x1401f8]
mov eax, dword [ecx + 0x1dad0]
test eax, eax
je 0x44992d
call fcn.00544d60
jmp 0x449932
call fcn.005451c0
mov eax, dword [edi + 0x140200]
test eax, eax
je 0x449a2f
mov edx, dword [eax + 0xf0]
test edx, edx
je 0x4499b5
mov ecx, dword [eax + 0xf4]
sub ecx, edx
sar ecx, 2
test ecx, ecx
je 0x4499b5
mov esi, dword [eax + 0x104]
mov ecx, dword [eax + 0x1dac8]
imul esi, esi, 0x12c
mov ebx, dword [edx + ecx*4]
add esi, 0x21fa2a0
mov eax, dword [esi + 0xc]
test eax, eax
lea ecx, [edx + ecx*4]
jne 0x449985
mov ecx, esi
call fcn.00543400
test ebx, ebx
jl 0x449998
cmp ebx, dword [esi + 8]
jge 0x449998
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax + ebx*4]
test ebx, ebx
jne 0x4499ac
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0
push eax
call dword [ecx + 0x104]
jmp 0x4499c7
mov ecx, ebx
call fcn.00527da0
jmp 0x4499c7
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0
push eax
call dword [edx + 0x104]
mov edx, dword [edi + 0x140200]
mov edx, dword [edx + 0xc8]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x13
push eax
call dword [ecx + 0xe4]
mov edx, dword [edi + 0x140200]
mov edx, dword [edx + 0xcc]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, dword [edi + 0x140200]
mov eax, dword [ecx + 0x1dad0]
test eax, eax
je 0x449a2a
call fcn.00544d60
jmp 0x449a2f
call fcn.005451c0
mov eax, dword [edi + 0x14020c]
test eax, eax
je 0x449b2c
mov edx, dword [eax + 0xf0]
test edx, edx
je 0x449ab2
mov ecx, dword [eax + 0xf4]
sub ecx, edx
sar ecx, 2
test ecx, ecx
je 0x449ab2
mov esi, dword [eax + 0x104]
mov ecx, dword [eax + 0x1dac8]
imul esi, esi, 0x12c
mov ebx, dword [edx + ecx*4]
add esi, 0x21fa2a0
mov eax, dword [esi + 0xc]
test eax, eax
lea ecx, [edx + ecx*4]
jne 0x449a82
mov ecx, esi
call fcn.00543400
test ebx, ebx
jl 0x449a95
cmp ebx, dword [esi + 8]
jge 0x449a95
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax + ebx*4]
test ebx, ebx
jne 0x449aa9
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0
push eax
call dword [ecx + 0x104]
jmp 0x449ac4
mov ecx, ebx
call fcn.00527da0
jmp 0x449ac4
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0
push eax
call dword [edx + 0x104]
mov edx, dword [edi + 0x14020c]
mov edx, dword [edx + 0xc8]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x13
push eax
call dword [ecx + 0xe4]
mov edx, dword [edi + 0x14020c]
mov edx, dword [edx + 0xcc]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
shl edx, 5
mov edx, dword [edx + 0x6b7b6c]
push edx
push 0x14
push eax
call dword [ecx + 0xe4]
mov ecx, dword [edi + 0x14020c]
mov eax, dword [ecx + 0x1dad0]
test eax, eax
je 0x449b27
call fcn.00544d60
jmp 0x449b2c
call fcn.005451c0
mov ecx, 0x21f5668
call fcn.00532a50
mov ecx, 0x21f5668
call fcn.00532a70
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [edi + 0x13fecc]
mov ecx, dword [eax + 0x150]
mov edx, dword [eax + 0x148]
push 0x3dcccccd
push ecx
push edx
lea ecx, [edi + 0xc]
call fcn.00591350
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 0xb
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 0x18
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 2
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 3
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov ecx, dword [edi + 0x1401f0]
test ecx, ecx
je 0x449cb6
call fcn.00546680
mov ecx, dword [edi + 0x1401f4]
test ecx, ecx
je 0x449cc5
call fcn.00546680
mov ecx, dword [edi + 0x1401fc]
test ecx, ecx
je 0x449cd4
call fcn.00546680
mov ecx, dword [edi + 0x140204]
test ecx, ecx
je 0x449ce3
call fcn.00546680
mov ecx, dword [edi + 0x140208]
test ecx, ecx
je 0x449cf2
call fcn.00546680
mov eax, dword [edi + 0x13d83c]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [edi + 0x13d844], ecx
je 0x449d32
mov edx, dword [edi + 0x13d844]
mov ecx, dword [edx + 8]
test ecx, ecx
je 0x449d18
push 0
call fcn.0040daf0
mov eax, dword [edi + 0x13d844]
mov ecx, dword [eax]
mov dword [edi + 0x13d844], ecx
mov eax, dword [edi + 0x13d83c]
mov edx, ecx
cmp edx, eax
jne 0x449d04
mov eax, dword [edi + 0x13d850]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [edi + 0x13d858], ecx
je 0x449d70
mov eax, dword [edi + 0x13d858]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x449d56
call fcn.0042f7c0
mov ecx, dword [edi + 0x13d858]
mov edx, dword [ecx]
mov dword [edi + 0x13d858], edx
mov ecx, dword [edi + 0x13d850]
mov eax, edx
cmp eax, ecx
jne 0x449d44
mov eax, dword [0x705e3c]
test eax, eax
je 0x449ddc
mov eax, dword [0x705d6c]
test eax, eax
je 0x449d92
mov ecx, dword [0x70594c]
mov al, byte [ecx + 0x1d0]
test al, al
jne 0x449ddc
mov eax, dword [0x705e5c]
test eax, eax
jne 0x449ddc
mov eax, dword [edi + 0x13d864]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [edi + 0x13d86c], ecx
je 0x449ddc
lea ecx, [ecx]
mov edx, dword [edi + 0x13d86c]
mov ecx, dword [edx + 8]
test ecx, ecx
je 0x449dc2
call fcn.004271a0
mov eax, dword [edi + 0x13d86c]
mov ecx, dword [eax]
mov dword [edi + 0x13d86c], ecx
mov eax, dword [edi + 0x13d864]
mov edx, ecx
cmp edx, eax
jne 0x449db0
mov edx, dword [edi + 0x13fec0]
mov eax, dword [edx]
cmp eax, edx
mov dword [edi + 0x13fec8], eax
mov ecx, dword [eax + 8]
je 0x449e34
test ecx, ecx
mov edx, dword [eax]
mov dword [edi + 0x13fec8], edx
je 0x449e34
lea ecx, [ecx]
mov eax, dword [ecx + 0x180]
test eax, eax
je 0x449e15
call fcn.00546680
inc dword [0x7095a8]
mov ecx, dword [edi + 0x13fec8]
cmp ecx, dword [edi + 0x13fec0]
mov eax, dword [ecx + 8]
je 0x449e34
test eax, eax
mov edx, dword [ecx]
mov dword [edi + 0x13fec8], edx
mov ecx, eax
jne 0x449e00
mov eax, dword [edi + 0x13d814]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [edi + 0x13d81c], ecx
je 0x449e8c
jmp 0x449e50
mov eax, dword [edi + 0x13d81c]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x449e72
mov eax, dword [ecx + 0x180]
test eax, eax
je 0x449e72
call fcn.00546680
inc dword [0x7095a8]
mov ecx, dword [edi + 0x13d81c]
mov edx, dword [ecx]
mov dword [edi + 0x13d81c], edx
mov ecx, dword [edi + 0x13d814]
mov eax, edx
cmp eax, ecx
jne 0x449e50
call fcn.0041fc50
mov eax, dword [edi + 0x13d8b4]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [edi + 0x13d8bc]
mov dword [esi], ecx
je 0x449ece
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x449ebd
mov eax, dword [ecx + 0xb0]
test eax, eax
je 0x449ebd
call fcn.00433a20
mov ecx, esi
call fcn.0040bbe0
mov edx, dword [esi]
cmp edx, dword [edi + 0x13d8b4]
jne 0x449ea5
mov eax, dword [edi + 0x13d8a0]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [edi + 0x13d8a8]
mov dword [esi], ecx
je 0x449f0b
mov eax, dword [esi]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x449efa
mov eax, dword [ecx + 0x90]
test eax, eax
je 0x449efa
call fcn.00431c90
mov ecx, esi
call fcn.0040bbe0
mov ecx, dword [esi]
cmp ecx, dword [edi + 0x13d8a0]
jne 0x449ee2
mov eax, dword [edi + 0x13d878]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [edi + 0x13d880]
mov dword [esi], ecx
je 0x44a038
mov edx, dword [esi]
mov ebx, dword [edx + 0x10]
test ebx, ebx
je 0x44a01d
mov eax, dword [ebx + 0x16c]
test eax, eax
je 0x44a01d
mov eax, dword [ebx + 0x27c]
test eax, eax
jne 0x44a01d
mov eax, dword [ebx + 0xe0]
test eax, eax
jne 0x449ff9
mov eax, dword [ebx + 0xe4]
test eax, eax
jne 0x449ff9
mov eax, dword [ebx + 0x288]
test eax, eax
jne 0x449ff9
cmp dword [ebx + 0xcc], 0x74
jge 0x449ff9
lea esi, [ebx + 0x74]
mov dword [esp + 0x1c], 2
lea ebx, [ebx]
mov ecx, dword [esi]
test ecx, ecx
je 0x449feb
call fcn.00428e30
mov ecx, dword [0x705814]
mov eax, dword [ecx]
push 0x13
call dword [eax + 4]
test al, al
je 0x449feb
mov eax, dword [0x705df8]
test eax, eax
je 0x449feb
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x18]
test ecx, ecx
je 0x449fd0
mov edx, dword [0x21f3f98]
mov eax, dword [0x705f54]
push edx
push eax
call fcn.00518260
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x1c]
test ecx, ecx
je 0x449feb
mov edx, dword [0x21f3f98]
mov eax, dword [0x705f54]
push edx
push eax
call fcn.00518260
mov eax, dword [esp + 0x1c]
add esi, 4
dec eax
mov dword [esp + 0x1c], eax
jne 0x449f90
mov ecx, ebx
call fcn.00412f20
mov ecx, ebx
call fcn.004128e0
mov ecx, ebx
call fcn.00412750
mov ecx, dword [ebx + 0x288]
test ecx, ecx
je 0x44a01d
call fcn.00431c90
lea esi, [edi + 0x13d880]
mov ecx, esi
call fcn.0040bbe0
mov ecx, dword [esi]
cmp ecx, dword [edi + 0x13d878]
jne 0x449f23
mov eax, dword [0x705d6c]
test eax, eax
je 0x44a051
mov edx, dword [0x70594c]
mov al, byte [edx + 0x1d0]
test al, al
jne 0x44a062
lea ecx, [edi + 0x13ff68]
call fcn.00536910
mov edx, dword [0x70594c]
mov eax, dword [0x705d6c]
test eax, eax
je 0x44a075
mov al, byte [edx + 0x1d0]
test al, al
jne 0x44a097
mov al, byte [0x709480]
cmp al, 3
je 0x44a097
cmp al, 4
je 0x44a097
mov ecx, dword [0x705948]
test ecx, ecx
je 0x44a09d
call fcn.00539450
mov edx, dword [0x70594c]
mov ecx, dword [0x705948]
test edx, edx
je 0x44a0ab
mov al, byte [edx + 0x1d0]
test al, al
jne 0x44a0b4
test ecx, ecx
je 0x44a0b4
call fcn.00538a70
mov edx, dword [0x21f3f98]
mov eax, dword [0x705f54]
push edx
push eax
mov ecx, 0x84b748
call fcn.00539890
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 1
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 2
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 3
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 4
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov ecx, 0x21f3fa0
call fcn.0052d500
mov eax, dword [edi + 0x13d8b4]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [edi + 0x13d8bc]
mov dword [esi], ecx
je 0x44a40e
lea esp, [esp]
mov eax, dword [esi]
mov esi, dword [eax + 0x10]
test esi, esi
je 0x44a3f3
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x44a3f3
fld dword [0x6a92f8]
fld dword [esi + 0x11c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x44a3f3
mov eax, dword [0x705e3c]
test eax, eax
je 0x44a3f3
mov eax, dword [0x705d6c]
test eax, eax
je 0x44a1ee
mov ecx, dword [0x70594c]
mov al, byte [ecx + 0x1d0]
test al, al
jne 0x44a3f3
mov eax, dword [esi + 0x124]
test eax, eax
je 0x44a211
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44a3f3
mov ecx, dword [eax + 0x100]
test ecx, ecx
je 0x44a3f3
fld dword [esi + 0xfc]
lea edx, [esi + 0x38]
fadd dword [esi + 0x3c]
push edx
lea eax, [esp + 0x24]
push eax
mov ecx, 0x21f3fa0
fstp dword [esi + 0x3c]
call fcn.0052c230
mov eax, dword [esi + 0x114]
test eax, eax
jne 0x44a274
mov ecx, dword [0x21f43b4]
lea ebx, [esi + 4]
push ebx
call fcn.005342a0
mov dword [esi + 0x114], eax
mov ecx, dword [0x21f43b4]
push ebx
call fcn.00534ce0
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul dword [0x6a95b8]
call fcn.005ba9a8
mov dword [esi + 0x118], eax
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1a0]
push edx
push 3
push eax
call dword [ecx + 0xb4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x230]
push edx
push 2
push eax
call dword [ecx + 0xb4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1f0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb4]
mov ecx, esi
call fcn.00432ce0
cmp dword [0x853e50], 3
jne 0x44a362
mov eax, dword [edi + 0x13fecc]
test eax, eax
je 0x44a362
mov eax, dword [eax + 0x160]
cmp eax, dword [esi + 0x5c]
jne 0x44a362
fld dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
fsub dword [0x6a9778]
lea ebx, [edi + 0x140234]
push ecx
call fcn.005ba9a8
fild dword [esi + 0x118]
push eax
fsubr dword [esp + 0x28]
fsub dword [0x6a95ec]
fsub dword [0x6a972c]
call fcn.005ba9a8
push eax
mov ecx, ebx
call fcn.00533790
fld dword [esp + 0x24]
mov edx, dword [esp + 0x28]
fsub dword [0x6a9778]
push edx
call fcn.005ba9a8
fild dword [esi + 0x118]
push eax
fadd dword [esp + 0x28]
fadd dword [0x6a9778]
fsub dword [0x6a972c]
call fcn.005ba9a8
push eax
mov ecx, ebx
call fcn.00533790
mov ebx, dword [esi + 0x114]
test ebx, ebx
je 0x44a39c
mov eax, dword [esp + 0x28]
fld dword [esp + 0x24]
push 0xffffff00
push eax
call fcn.005ba9a8
fild dword [esi + 0x118]
push eax
fsubr dword [esp + 0x2c]
call fcn.005ba9a8
mov ecx, dword [0x21f43b4]
push eax
push ebx
call fcn.00534aa0
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1a0]
push edx
push 3
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x230]
push edx
push 2
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1f0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
fld dword [esi + 0x3c]
fsub dword [esi + 0xfc]
fstp dword [esi + 0x3c]
lea esi, [edi + 0x13d8bc]
mov ecx, esi
call fcn.0040bbe0
mov eax, dword [esi]
cmp eax, dword [edi + 0x13d8b4]
jne 0x44a190
mov eax, dword [edi + 0x13d8c8]
mov ecx, dword [eax]
cmp ecx, eax
lea edx, [edi + 0x13d8d0]
mov dword [edx], ecx
je 0x44a6fc
jmp 0x44a430
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x13d8d0]
mov edi, dword [ecx + 0x10]
add eax, 0x13d8d0
test edi, edi
je 0x44a6dd
mov eax, dword [edi + 0x16c]
test eax, eax
je 0x44a6dd
lea edx, [edi + 0x10]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x24], ecx
fld dword [esp + 0x24]
fadd dword [0x6a9790]
mov dword [esp + 0x20], eax
cmp byte [edi + 0x277], 3
fstp dword [esp + 0x24]
mov dword [esp + 0x28], edx
je 0x44a494
fld dword [esp + 0x24]
fsub dword [0x6ab4b0]
fstp dword [esp + 0x24]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x21f3fa0
call fcn.0052c230
mov eax, dword [0x705e3c]
test eax, eax
je 0x44a6dd
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1a0]
push ecx
push 3
push eax
call dword [edx + 0xb4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x230]
push ecx
push 2
push eax
call dword [edx + 0xb4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1f0]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb4]
mov eax, dword [0x705d6c]
test eax, eax
je 0x44a51d
mov edx, dword [0x70594c]
mov al, byte [edx + 0x1d0]
test al, al
jne 0x44a692
mov eax, dword [0x705e2c]
test eax, eax
je 0x44a692
mov al, byte [edi + 0x28c]
test al, al
mov dword [esp + 0x14], 0xffffffff
je 0x44a546
mov dword [esp + 0x14], 0xff0000ff
jmp 0x44a565
mov al, byte [edi + 0x280]
test al, al
jne 0x44a565
mov al, byte [0x21e8d7a]
cmp al, byte [edi + 0x276]
je 0x44a565
mov dword [esp + 0x14], 0xffff0000
mov ecx, dword [0x7089f4]
mov eax, 1
cmp ecx, eax
jl 0x44a587
mov ecx, dword [edi + 0x34]
cmp ecx, dword [0x7089f8]
jne 0x44a587
mov dword [esp + 0x14], 0xffff0000
cmp dword [0x708a10], eax
jl 0x44a5af
mov edx, dword [edi + 0x2c8]
cmp edx, dword [0x7088d4]
jne 0x44a5af
mov al, byte [edi + 0x37a]
test al, al
je 0x44a5af
mov dword [esp + 0x14], 0xffff0000
mov ebx, dword [edi + 0x2cc]
test ebx, ebx
je 0x44a61b
lea esi, [edi + 0x105]
lea eax, [edi + 0xf0]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x44a5e9
test cl, cl
je 0x44a5e5
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x44a5e9
add eax, 2
add esi, 2
test cl, cl
jne 0x44a5c5
xor eax, eax
jmp 0x44a5ee
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44a658
test ebx, ebx
je 0x44a61b
mov eax, dword [ebx]
test eax, eax
je 0x44a608
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebx], 0
push ebx
call fcn.005b9e6d
add esp, 4
mov dword [edi + 0x2cc], 0
mov ecx, dword [0x21f43b4]
lea esi, [edi + 0xf0]
push esi
call fcn.005342a0
mov dword [edi + 0x2cc], eax
mov ecx, dword [0x21f43b4]
push esi
call fcn.00534ce0
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul dword [0x6a95b8]
call fcn.005ba9a8
mov dword [edi + 0x2d0], eax
mov esi, dword [edi + 0x2cc]
test esi, esi
je 0x44a692
mov edx, dword [esp + 0x14]
fld dword [esp + 0x50]
mov eax, dword [esp + 0x54]
push edx
push eax
call fcn.005ba9a8
fild dword [edi + 0x2d0]
push eax
fsubr dword [esp + 0x58]
call fcn.005ba9a8
mov ecx, dword [0x21f43b4]
push eax
push esi
call fcn.00534aa0
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1a0]
push edx
push 3
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x230]
push edx
push 2
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1f0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
mov edi, dword [esp + 0x2c]
lea esi, [edi + 0x13d8d0]
mov ecx, esi
call fcn.0040bbe0
mov eax, dword [esi]
cmp eax, dword [edi + 0x13d8c8]
jne 0x44a430
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0x13d878]
mov ecx, dword [eax]
add edx, 0x13d880
cmp ecx, eax
mov dword [edx], ecx
je 0x44b177
jmp 0x44a720
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x13d880]
mov edi, dword [ecx + 0x10]
add eax, 0x13d880
test edi, edi
je 0x44b158
mov eax, dword [edi + 0x16c]
test eax, eax
je 0x44b158
fld dword [0x6a92f8]
fld dword [edi + 0x2e0]
fucompp
fnstsw ax
test ah, 0x44
jp 0x44b158
mov eax, dword [edi + 0x27c]
test eax, eax
mov esi, 1
mov ecx, esi
je 0x44a7d2
mov dl, byte [0x21e8d7a]
cmp dl, byte [edi + 0x276]
je 0x44a782
xor ecx, ecx
test eax, eax
je 0x44a7d2
cmp byte [edi + 0x28c], 1
jne 0x44a791
xor ecx, ecx
test eax, eax
je 0x44a7d2
cmp dword [0x7089f4], esi
jl 0x44a7aa
mov edx, dword [edi + 0x34]
cmp edx, dword [0x7089f8]
jne 0x44a7aa
xor ecx, ecx
test eax, eax
je 0x44a7d2
cmp dword [0x708a10], esi
jl 0x44a7d2
mov eax, dword [edi + 0x2c8]
cmp eax, dword [0x7088d4]
jne 0x44a7d2
mov al, byte [edi + 0x37a]
test al, al
jne 0x44b158
test ecx, ecx
je 0x44b158
lea ecx, [edi + 0x10]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0xdc]
cmp eax, 4
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], ecx
je 0x44a80d
cmp eax, 7
je 0x44a80d
fld dword [esp + 0x24]
fadd dword [0x6a9758]
jmp 0x44a817
fld dword [esp + 0x24]
fadd dword [0x6a9790]
mov al, byte [edi + 0x277]
fstp dword [esp + 0x24]
cmp al, 3
je 0x44a833
fld dword [esp + 0x24]
fsub dword [0x6ab4b0]
fstp dword [esp + 0x24]
mov eax, dword [edi + 0x288]
test eax, eax
je 0x44a859
cmp byte [edi + 0x379], 6
je 0x44a859
fld dword [edi + 0x14]
fsub dword [0x6a95c0]
fadd dword [eax + 0x8c]
fstp dword [esp + 0x24]
mov eax, dword [edi + 0x3cc]
test eax, eax
je 0x44a8ab
lea edx, [esp + 0x70]
mov dword [esp + 0x70], eax
push edx
lea eax, [esp + 0x78]
push eax
mov ecx, 0x846e54
call fcn.0054e1d0
mov eax, dword [esp + 0x74]
cmp eax, dword [0x846e58]
je 0x44a8ab
mov eax, dword [eax + 0x10]
test eax, eax
je 0x44a8ab
mov ecx, dword [eax + 0x288]
test ecx, ecx
je 0x44a8ab
fld dword [eax + 0x14]
fsub dword [0x6a95c0]
fadd dword [ecx + 0x8c]
fstp dword [esp + 0x24]
mov al, byte [edi + 0x378]
test al, al
je 0x44a8cc
cmp byte [edi + 0x379], 6
je 0x44a8cc
fld dword [esp + 0x24]
fadd dword [0x6a95b8]
fstp dword [esp + 0x24]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x68]
push edx
mov ecx, 0x21f3fa0
call fcn.0052c230
mov eax, dword [edi + 0x3cc]
test eax, eax
je 0x44a8f8
fld dword [esp + 0x68]
fadd dword [0x6a95ec]
fstp dword [esp + 0x68]
mov eax, dword [0x705e3c]
test eax, eax
je 0x44b151
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1a0]
push edx
push 3
push eax
call dword [ecx + 0xb4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x230]
push edx
push 2
push eax
call dword [ecx + 0xb4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x1f0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb4]
mov eax, dword [0x705d6c]
test eax, eax
je 0x44a96c
mov eax, dword [0x70594c]
mov cl, byte [eax + 0x1d0]
test cl, cl
jne 0x44b106
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x13fecc]
mov eax, dword [edx + 0x34]
cmp eax, dword [edi + 0x34]
jne 0x44a98c
mov eax, dword [0x705e28]
test eax, eax
jne 0x44a999
jmp 0x44b106
mov eax, dword [0x705e2c]
test eax, eax
je 0x44b106
movzx eax, byte [edi + 0x2a4]
xor ecx, ecx
sub eax, 4
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ecx
mov byte [esp + 0x60], cl
mov dword [esp + 0x14], 0xffffffff
je 0x44ab11
dec eax
je 0x44aaf4
dec eax
je 0x44aad7
lea eax, [edi + 0xf0]
lea edx, [esp + 0x4c]
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x44a9e5
mov al, byte [edi + 0x28c]
test al, al
je 0x44aa06
mov dword [esp + 0x14], 0xff0000ff
jmp 0x44aa87
mov eax, dword [0x21e8d5c]
test eax, eax
je 0x44aa67
mov ecx, dword [0x21e8c70]
mov ebx, dword [0x21e8c74]
xor esi, esi
mov edx, ecx
nop
test ecx, ecx
jne 0x44aa28
xor eax, eax
jmp 0x44aa2f
mov eax, ebx
sub eax, ecx
sar eax, 2
cmp esi, eax
jge 0x44aa67
test ecx, ecx
jne 0x44aa3b
xor eax, eax
jmp 0x44aa42
mov eax, ebx
sub eax, ecx
sar eax, 2
cmp esi, eax
jge 0x44aa61
mov dword [0x21e8c7c], edx
mov eax, dword [edx]
test eax, eax
je 0x44aa61
mov eax, dword [eax]
cmp eax, dword [edi + 0x34]
jne 0x44aa61
mov dword [esp + 0x14], 0xff00ff00
inc esi
add edx, 4
jmp 0x44aa20
mov al, byte [edi + 0x280]
test al, al
jne 0x44aa87
mov cl, byte [0x21e8d7a]
cmp cl, byte [edi + 0x276]
je 0x44aa87
mov dword [esp + 0x14], 0xffff0000
mov ecx, dword [0x7089f4]
mov eax, 1
cmp ecx, eax
jl 0x44aaa9
mov edx, dword [edi + 0x34]
cmp edx, dword [0x7089f8]
jne 0x44aaa9
mov dword [esp + 0x14], 0xffff0000
cmp dword [0x708a10], eax
jl 0x44ab34
mov eax, dword [edi + 0x2c8]
cmp eax, dword [0x7088d4]
jne 0x44ab34
mov al, byte [edi + 0x37a]
test al, al
je 0x44ab34
mov dword [esp + 0x14], 0xffff0000
jmp 0x44ab34
push 0x14ac
call fcn.0041b840
add esp, 4
lea edx, [esp + 0x4c]
mov cl, byte [eax]
inc eax
mov byte [edx], cl
inc edx
test cl, cl
jne 0x44aae8
jmp 0x44ab2c
push 0x14ab
call fcn.0041b840
add esp, 4
lea edx, [esp + 0x4c]
mov cl, byte [eax]
inc eax
mov byte [edx], cl
inc edx
test cl, cl
jne 0x44ab05
jmp 0x44ab2c
push 0x14aa
call fcn.0041b840
add esp, 4
lea edx, [esp + 0x4c]
mov cl, byte [eax]
inc eax
mov byte [edx], cl
inc edx
test cl, cl
jne 0x44ab22
mov dword [esp + 0x14], 0xffffff00
mov ebx, dword [edi + 0x2cc]
test ebx, ebx
je 0x44aba2
lea esi, [esp + 0x4c]
lea eax, [edi + 0x105]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x44ab6c
test cl, cl
je 0x44ab68
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x44ab6c
add eax, 2
add esi, 2
test cl, cl
jne 0x44ab48
xor eax, eax
jmp 0x44ab71
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44ac74
test ebx, ebx
je 0x44aba2
mov eax, dword [ebx]
test eax, eax
je 0x44ab8f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebx], 0
push ebx
call fcn.005b9e6d
add esp, 4
mov dword [edi + 0x2cc], 0
mov ecx, dword [0x21f43b4]
lea edx, [esp + 0x4c]
push edx
call fcn.005342a0
mov dword [edi + 0x2cc], eax
mov ecx, dword [0x21f43b4]
lea eax, [esp + 0x4c]
push eax
call fcn.00534ce0
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul dword [0x6a95b8]
call fcn.005ba9a8
mov dword [edi + 0x2d0], eax
lea eax, [esp + 0x4c]
mov edx, eax
mov ecx, edi
sub ecx, edx
lea edx, [ecx + 0x105]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x44abf1
mov ecx, dword [0x21ec5a4]
mov eax, dword [ecx]
cmp eax, ecx
mov dword [0x21ec5ac], eax
je 0x44ac74
lea esp, [esp]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x44ac51
lea esi, [esp + 0x4c]
add eax, 0x1d
mov edi, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x44ac48
test cl, cl
je 0x44ac44
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x44ac48
add eax, 2
add esi, 2
test cl, cl
jne 0x44ac20
xor eax, eax
jmp 0x44ac4d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44ac6a
mov ecx, 0x21ec5ac
call fcn.0040bbe0
mov eax, dword [0x21ec5ac]
cmp eax, dword [0x21ec5a4]
jne 0x44ac10
jmp 0x44ac74
mov dword [edi + 0x3d4], 1
cmp dword [esp + 0x14], 0xffffff00
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x18], 0
je 0x44adbd
mov eax, dword [edi + 0x2ec]
test eax, eax
je 0x44aca0
mov dword [esp + 0x18], 0xfffffffa
mov eax, dword [0x852b2c]
cmp eax, dword [edi + 0x34]
jne 0x44acdd
mov ecx, dword [0x21e8d5c]
test ecx, ecx
jne 0x44acbe
mov cl, byte [0x21e8d60]
test cl, cl
je 0x44acdd
cmp dword [0x21e8d58], eax
je 0x44acd6
mov eax, dword [0x21e8c94]
test eax, eax
je 0x44acd6
mov eax, dword [esp + 0x6c]
push eax
jmp 0x44acf4
mov ecx, dword [esp + 0x6c]
push ecx
jmp 0x44ad30
mov al, byte [edi + 0x2c0]
test al, al
je 0x44ad6b
cmp al, 1
jne 0x44ad2b
mov edx, dword [esp + 0x6c]
push edx
fld dword [esp + 0x6c]
fsub dword [0x6a9778]
call fcn.005ba9a8
fild dword [edi + 0x2d0]
push eax
fsubr dword [esp + 0x6c]
fiadd dword [esp + 0x20]
fsub dword [0x6a95f0]
fsub dword [0x6a9710]
call fcn.005ba9a8
lea ecx, [esi + 0x140284]
jmp 0x44ad65
mov eax, dword [esp + 0x6c]
push eax
fld dword [esp + 0x6c]
fsub dword [0x6a9778]
call fcn.005ba9a8
fild dword [edi + 0x2d0]
push eax
fsubr dword [esp + 0x6c]
fiadd dword [esp + 0x20]
fsub dword [0x6a95f0]
fsub dword [0x6a9710]
call fcn.005ba9a8
lea ecx, [esi + 0x140294]
push eax
call fcn.00533790
mov edx, dword [esp + 0x18]
mov eax, dword [edi + 0x2ec]
add edx, 6
test eax, eax
mov dword [esp + 0x18], edx
je 0x44adbd
fld dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
fsub dword [0x6a9778]
push eax
push ecx
call fcn.005ba9a8
fild dword [edi + 0x2d0]
push eax
fiadd dword [esp + 0x24]
fadd dword [esp + 0x70]
fadd dword [0x6a9778]
fsub dword [0x6a972c]
call fcn.005ba9a8
push eax
mov ecx, esi
call fcn.004430f0
cmp dword [0x853e50], 2
jne 0x44af27
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0x13fecc]
test eax, eax
je 0x44af27
mov eax, dword [eax + 0x160]
cmp eax, dword [edi + 0x34]
jne 0x44af27
mov al, byte [edi + 0x2c0]
fld dword [esp + 0x68]
fsub dword [0x6a9778]
test al, al
mov eax, dword [edi + 0x2ec]
mov esi, edx
je 0x44ae61
add esi, 0x140234
test eax, eax
je 0x44ae39
mov ecx, dword [esp + 0x6c]
push ecx
call fcn.005ba9a8
fild dword [edi + 0x2d0]
fsubr dword [esp + 0x68]
fsub dword [0x6a95c4]
fsub dword [0x6a95ec]
fsub dword [0x6a95f0]
jmp 0x44aea7
mov edx, dword [esp + 0x6c]
push edx
call fcn.005ba9a8
fild dword [edi + 0x2d0]
fsubr dword [esp + 0x68]
fsub dword [0x6a9710]
fsub dword [0x6a95ec]
fsub dword [0x6a95f0]
jmp 0x44aea7
add esi, 0x140234
test eax, eax
je 0x44ae87
mov eax, dword [esp + 0x6c]
push eax
call fcn.005ba9a8
fild dword [edi + 0x2d0]
fsubr dword [esp + 0x68]
fsub dword [0x6a9710]
jmp 0x44ae9b
mov ecx, dword [esp + 0x6c]
push ecx
call fcn.005ba9a8
fild dword [edi + 0x2d0]
fsubr dword [esp + 0x68]
fsub dword [0x6a95ec]
fsub dword [0x6a9778]
push eax
call fcn.005ba9a8
mov ecx, esi
push eax
call fcn.00533790
fld dword [esp + 0x68]
mov eax, dword [edi + 0x2ec]
fsub dword [0x6a9778]
test eax, eax
je 0x44aef5
mov edx, dword [esp + 0x6c]
push edx
call fcn.005ba9a8
fild dword [esp + 0x1c]
fiadd dword [edi + 0x2d0]
fadd dword [esp + 0x68]
fadd dword [0x6a95e8]
fsub dword [0x6a972c]
fadd dword [0x6a9728]
jmp 0x44af19
mov eax, dword [esp + 0x6c]
push eax
call fcn.005ba9a8
fild dword [esp + 0x1c]
fiadd dword [edi + 0x2d0]
fadd dword [esp + 0x68]
fadd dword [0x6a9778]
fsub dword [0x6a972c]
push eax
call fcn.005ba9a8
mov ecx, esi
push eax
call fcn.00533790
mov eax, dword [edi + 0x2ec]
mov ebx, 1
cmp eax, ebx
jae 0x44af3b
sub dword [esp + 0x18], 6
mov esi, dword [edi + 0x2cc]
test esi, esi
je 0x44af79
mov ecx, dword [esp + 0x14]
fld dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
push ecx
push edx
call fcn.005ba9a8
fild dword [edi + 0x2d0]
push eax
fsubr dword [esp + 0x70]
fiadd dword [esp + 0x24]
call fcn.005ba9a8
mov ecx, dword [0x21f43b4]
push eax
push esi
call fcn.00534aa0
cmp byte [edi + 0x2a4], 4
jae 0x44b106
mov eax, dword [edi + 0x2c4]
test eax, eax
je 0x44b035
mov ecx, dword [edi + 0x2d4]
test ecx, ecx
jne 0x44afdb
mov ecx, dword [0x21f43b4]
push eax
call fcn.005342a0
mov dword [edi + 0x2d4], eax
mov eax, dword [edi + 0x2c4]
mov ecx, dword [0x21f43b4]
push eax
call fcn.00534ce0
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul dword [0x6a95b8]
call fcn.005ba9a8
mov dword [edi + 0x2d8], eax
cmp dword [edi + 0x3d4], ebx
mov esi, dword [edi + 0x2d4]
jne 0x44aff9
test esi, esi
je 0x44b035
mov ecx, dword [esp + 0x6c]
push 0xffe0affa
push ecx
jmp 0x44b007
test esi, esi
je 0x44b035
mov edx, dword [esp + 0x6c]
push 0xffe4e4e4
push edx
fld dword [esp + 0x70]
fsub dword [0x6a95ec]
call fcn.005ba9a8
fld dword [esp + 0x6c]
push eax
call fcn.005ba9a8
mov edx, dword [edi + 0x2d8]
mov ecx, dword [0x21f43b4]
sub eax, edx
push eax
push esi
call fcn.00534aa0
mov eax, dword [edi + 0x2f0]
test eax, eax
je 0x44b0d7
mov eax, dword [edi + 0x2dc]
test eax, eax
jne 0x44b06b
xor eax, eax
mov al, byte [edi + 0x276]
lea ecx, [edi + 0x2f4]
push eax
push ecx
call fcn.0041a8c0
add esp, 8
mov dword [edi + 0x2dc], eax
mov eax, dword [edi + 0x2dc]
test eax, eax
je 0x44b106
fld dword [esp + 0x68]
mov edx, dword [esp + 0x64]
fsub dword [0x6a9610]
mov ecx, dword [esp + 0x6c]
push eax
push 0xffccff66
mov dword [esp + 0x98], edx
fstp dword [esp + 0x9c]
mov eax, dword [esp + 0x98]
push 0x9a1d1f24
sub esp, 0xc
mov dword [esp + 0xb0], ecx
mov ecx, dword [esp + 0xac]
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0xb0]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
call fcn.0041a920
add esp, 0x18
jmp 0x44b106
mov esi, dword [edi + 0x2dc]
test esi, esi
je 0x44b106
mov eax, dword [esi]
test eax, eax
je 0x44b0f3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [esi], 0
push esi
call fcn.005b9e6d
add esp, 4
mov dword [edi + 0x2dc], 0
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1a0]
push ecx
push 3
push eax
call dword [edx + 0xb0]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x230]
push ecx
push 2
push eax
call dword [edx + 0xb0]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1f0]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov ecx, edi
call fcn.0040fd30
mov edi, dword [esp + 0x2c]
lea esi, [edi + 0x13d880]
mov ecx, esi
call fcn.0040bbe0
mov edx, dword [esi]
cmp edx, dword [edi + 0x13d878]
jne 0x44a720
mov edi, dword [esp + 0x2c]
mov ebx, dword [edi + 0x13fecc]
test ebx, ebx
je 0x44b4a2
mov eax, dword [ebx + 0x160]
cmp eax, 0xffffffff
je 0x44b4a2
mov ecx, dword [0x853e50]
test ecx, ecx
jne 0x44b4a2
mov dword [esp + 0x70], eax
lea eax, [esp + 0x70]
push eax
lea ecx, [esp + 0x78]
push ecx
lea ecx, [edi + 0x13d89c]
call fcn.0054e1d0
mov eax, dword [esp + 0x74]
cmp eax, dword [edi + 0x13d8a0]
je 0x44b498
mov esi, dword [eax + 0x10]
test esi, esi
je 0x44b498
cmp dword [esi + 0x4c], 4
je 0x44b498
fld dword [esi + 4]
fsub dword [ebx + 0x10]
fld dword [esi + 8]
fsub dword [ebx + 0x14]
fld dword [esi + 0xc]
fsub dword [ebx + 0x18]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp st(3)
fstp st(0)
fstp st(0)
fcomp dword [0x6a9740]
fnstsw ax
test ah, 0x41
je 0x44b498
mov eax, dword [esi + 0x90]
test eax, eax
je 0x44b4a2
mov ecx, esi
call fcn.00430ab0
test eax, eax
jne 0x44b4a2
mov eax, dword [0x705e3c]
test eax, eax
je 0x44b4a2
mov eax, dword [0x705d6c]
test eax, eax
je 0x44b266
mov edx, dword [0x70594c]
mov al, byte [edx + 0x1d0]
test al, al
jne 0x44b4a2
mov eax, dword [0x705e30]
test eax, eax
je 0x44b4a2
xor eax, eax
mov ax, word [esi + 0x2c]
mov ecx, 0x859304
push eax
call fcn.0045f950
mov ebx, eax
test ebx, ebx
je 0x44b4a2
mov ecx, dword [ebx]
lea edx, [esp + 0x438]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x44b297
xor ecx, ecx
mov cx, word [ebx + 6]
push ecx
mov ecx, 0x851aa0
call fcn.004c0e70
fld dword [esi + 0x8c]
mov edx, dword [esi + 4]
fadd dword [esi + 8]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x4c], edx
push ecx
fstp dword [esp + 0x54]
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0xc]
lea edx, [esp + 0x24]
push edx
mov ecx, 0x21f3fa0
mov dword [esp + 0x5c], eax
call fcn.0052c230
mov eax, dword [esi + 0xf8]
test eax, eax
jne 0x44b334
mov ecx, dword [0x21f43b4]
lea eax, [esp + 0x438]
push eax
call fcn.005342a0
lea ecx, [esp + 0x438]
mov dword [esi + 0xf8], eax
push ecx
mov ecx, dword [0x21f43b4]
call fcn.00534ce0
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul dword [0x6a95b8]
call fcn.005ba9a8
mov dword [esi + 0xfc], eax
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1a0]
push ecx
push 3
push eax
call dword [edx + 0xb4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x230]
push ecx
push 2
push eax
call dword [edx + 0xb4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1f0]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb4]
cmp byte [ebx + 0x12], 5
jae 0x44b411
fld dword [esp + 0x24]
mov edx, dword [esp + 0x28]
fsub dword [0x6a9778]
push edx
call fcn.005ba9a8
fild dword [esi + 0xfc]
push eax
fsubr dword [esp + 0x28]
fsub dword [0x6a95ec]
fsub dword [0x6a972c]
call fcn.005ba9a8
push eax
movzx eax, byte [ebx + 0x12]
shl eax, 4
lea ecx, [eax + edi + 0x140234]
call fcn.00533790
mov ecx, dword [esp + 0x28]
fld dword [esp + 0x24]
push ecx
fsub dword [0x6a9778]
call fcn.005ba9a8
fild dword [esi + 0xfc]
push eax
fadd dword [esp + 0x28]
fadd dword [0x6a9778]
fsub dword [0x6a972c]
call fcn.005ba9a8
movzx edx, byte [ebx + 0x12]
shl edx, 4
push eax
lea ecx, [edx + edi + 0x140234]
call fcn.00533790
mov ebx, dword [esi + 0xf8]
test ebx, ebx
je 0x44b44b
mov eax, dword [esp + 0x74]
fld dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push eax
push ecx
call fcn.005ba9a8
fild dword [esi + 0xfc]
push eax
fsubr dword [esp + 0x2c]
call fcn.005ba9a8
mov ecx, dword [0x21f43b4]
push eax
push ebx
call fcn.00534aa0
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1a0]
push ecx
push 3
push eax
call dword [edx + 0xb0]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x230]
push ecx
push 2
push eax
call dword [edx + 0xb0]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
lea ecx, [esp + 0x1f0]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
jmp 0x44b4a2
mov dword [ebx + 0x160], 0xffffffff
mov edx, dword [edi + 0x140228]
push edx
lea eax, [edi + 0x140210]
push eax
mov ecx, 0x21f1cd8
call fcn.00521e00
mov esi, eax
test esi, esi
je 0x44b608
mov eax, dword [0x705dc4]
test eax, eax
je 0x44b608
mov eax, dword [0x705d6c]
test eax, eax
je 0x44b4ee
mov ecx, dword [0x70594c]
mov al, byte [ecx + 0x1d0]
test al, al
jne 0x44b608
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 2
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 3
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 4
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 2
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
add esi, 0x28
mov eax, esi
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x44b592
sub eax, ecx
push 0
push eax
push esi
mov ecx, 0x21f3fa0
call fcn.0052dca0
mov ecx, 0x21f3fa0
mov ebx, eax
call fcn.0052d500
mov edx, dword [0x708798]
mov eax, dword [0x708794]
push 0xcd1d1f24
push 0xd
add ebx, 3
push ebx
add edx, 0xffffffee
push edx
push eax
call fcn.004fbb70
mov ecx, dword [0x708798]
mov edx, dword [0x708794]
push esi
push 0
push 0xff
push 0xff
push 0xff
add ecx, 0xfffffff5
push ecx
add edx, 5
push edx
push 0x21f3fa0
call fcn.0052be60
add esp, 0x34
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x16
push eax
call dword [ecx + 0xe4]
push 0
push 0
push 0
lea edx, [esp + 0x3bc]
push edx
call fcn.005d3023
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x3b0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21ecb48]
test eax, eax
je 0x44bbb9
xor esi, esi
xor ebx, ebx
lea esp, [esp]
mov eax, dword [edi + 0x1402e0]
test eax, eax
je 0x44bbb9
mov ecx, dword [edi + 0x1402e4]
sub ecx, eax
mov eax, 0x78787879
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jae 0x44bbb9
mov eax, dword [edi + 0x1402e0]
mov cx, word [0x852b18]
add eax, ebx
cmp cx, word [eax + 0x3c]
jne 0x44bbb0
mov cl, byte [eax]
fld dword [0x6a867c]
test cl, cl
mov dword [esp + 0x14], 0
jne 0x44b6ce
fstp st(0)
mov dword [esp + 0x14], 0x43fa0000
fld dword [0x6ab9f8]
jmp 0x44b6df
cmp byte [eax], 1
jne 0x44b6df
mov edx, dword [eax + 0x38]
fstp st(0)
fld dword [eax + 0x34]
mov dword [esp + 0x14], edx
mov ecx, dword [eax + 4]
fst dword [esp + 0x108]
mov edx, dword [eax + 0xc]
fst dword [esp + 0x24]
mov dword [esp + 0x104], ecx
fst dword [esp + 0xe0]
mov dword [esp + 0x64], ecx
fst dword [esp + 0x138]
mov ecx, dword [eax + 0xc]
fst dword [esp + 0x12c]
mov dword [esp + 0x6c], ecx
fst dword [esp + 0xc8]
mov ecx, dword [eax + 0x18]
fst dword [esp + 0x50]
mov dword [esp + 0x28], ecx
fstp dword [esp + 0xec]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x94], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x10c], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xd0], ecx
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x68], edx
mov edx, dword [eax + 0x10]
mov dword [esp + 0xd8], ecx
mov ecx, dword [eax + 0x24]
mov dword [esp + 0x20], edx
mov dword [esp + 0x90], edx
mov edx, dword [eax + 0x18]
mov dword [esp + 0x13c], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x98], edx
mov dword [esp + 0xe4], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x120], ecx
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0xd4], edx
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x128], ecx
mov dword [esp + 0xf8], ecx
mov ecx, dword [eax + 0x24]
mov dword [esp + 0x134], edx
mov dword [esp + 0x11c], edx
mov edx, dword [eax + 0x24]
mov dword [esp + 0x100], ecx
mov ecx, dword [eax + 0x30]
mov dword [esp + 0x124], edx
mov dword [esp + 0x130], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xfc], edx
mov edx, dword [eax + 0x28]
mov dword [esp + 0x148], ecx
mov ecx, dword [eax + 0x28]
mov dword [esp + 0xc4], edx
mov dword [esp + 0x144], edx
mov edx, dword [eax + 0x30]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x7c], ecx
mov ecx, dword [eax + 0x30]
mov dword [esp + 0x14c], edx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x84], ecx
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x80], edx
mov edx, dword [eax + 4]
mov dword [esp + 0xf0], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xe8], edx
mov dword [esp + 0x110], edx
mov edx, dword [eax + 0xc]
mov eax, dword [0x21f3f98]
push 4
mov dword [esp + 0x118], ecx
mov ecx, dword [eax]
mov dword [esp + 0x11c], edx
push 1
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 2
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 3
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 2
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 0
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 0
push 6
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 1
push 1
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 4
push 1
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0xe
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 1
push 7
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f3f98]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0xa4]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x40]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x90]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x12c]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x13c]
mov dword [edx + 4], ecx
mov ecx, dword [0x21f3f98]
push ecx
mov ecx, edi
mov dword [edx + 8], eax
call fcn.00443190
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x120]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x130]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0x140]
mov eax, dword [esp + 0x144]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x154]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0xfc]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x104]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x114]
mov dword [edx + 4], ecx
mov ecx, dword [0x21f3f98]
push ecx
mov ecx, edi
mov dword [edx + 8], eax
call fcn.00443190
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x148]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x158]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0xd0]
mov eax, dword [esp + 0xd4]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0xe4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x114]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x14c]
mov ecx, dword [esp + 0x150]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x160]
mov dword [edx + 4], ecx
mov ecx, dword [0x21f3f98]
push ecx
mov ecx, edi
mov dword [edx + 8], eax
call fcn.00443190
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x114]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x124]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0xf4]
mov eax, dword [esp + 0xf8]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x108]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x98]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x84]
mov dword [edx + 4], ecx
mov ecx, dword [0x21f3f98]
push ecx
mov ecx, edi
mov dword [edx + 8], eax
call fcn.00443190
inc esi
add ebx, 0x44
jmp 0x44b660
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x30]
cmp eax, edx
mov dword [esp + 0x40], eax
je 0x44bbf7
lea esp, [esp]
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
mov dword [edx + 0xc], eax
mov dword [esp + 0x48], eax
mov dword [ecx], 0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x44bbd0
lea edx, [esp + 0x30]
mov ecx, edx
mov eax, edx
mov dword [esp + 0x40], ecx
lea ecx, [esp + 0x44]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
call fcn.00443280
mov ecx, dword [esp + 0x544]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret