Function at 0x4b2610
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x4b4
mov eax, dword [0x6f3558]
push ebx
push esi
mov esi, 4
cmp eax, esi
push edi
mov ebx, ecx
jne 0x4b263e
mov ecx, dword [ebx + 0x3c0c]
test ecx, ecx
je 0x4b263e
call fcn.004bd040
mov eax, dword [ebx + 0x3bf8]
test eax, eax
jne 0x4b2654
cmp dword [0x6f3558], esi
je 0x4b3886
lea eax, [esp + 0x58]
push eax
push 0x21f1d44
push 0x21f1d38
mov ecx, 0x21f1c78
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0x3f800000
mov dword [esp + 0x6c], 0
call fcn.00530d40
mov ecx, dword [0x21f1d38]
mov edx, dword [0x21f1d3c]
mov eax, dword [0x21f1d40]
mov dword [0x21f68d0], ecx
mov ecx, dword [0x21f1d44]
mov dword [0x21f68d4], edx
mov edx, dword [0x21f1d48]
mov dword [0x21f68d8], eax
mov eax, dword [0x21f1d4c]
mov dword [0x21f68dc], ecx
mov ecx, dword [0x21f1d50]
mov dword [0x21f68e0], edx
mov edx, dword [0x21f1d54]
mov dword [0x21f68e4], eax
mov eax, dword [0x21f1d58]
push 0x21f68d0
mov dword [0x21f68e8], ecx
mov dword [0x21f68ec], edx
mov dword [0x21f68f0], eax
call fcn.00592fb0
add esp, 4
mov ecx, 0x21f68d0
call fcn.00598b80
mov ecx, 0x21f68d0
call fcn.00598a80
mov ecx, 0x21f1c78
call fcn.00532660
mov ecx, dword [0x7034d4]
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
jne 0x4b2743
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, 0x7072a0
call fcn.004469c0
mov eax, dword [0x6f355c]
mov ecx, dword [0x6f3560]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x6f
mov dword [esp + 0x18], eax
mov eax, ecx
fild dword [esp + 0x18]
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
fstp dword [esp + 0x2c]
sub ecx, eax
sub ecx, 0x114
mov dword [esp + 0x18], ecx
mov ecx, dword [0x7034d4]
test ecx, ecx
fild dword [esp + 0x18]
fstp dword [esp + 0x1c]
je 0x4b27b3
mov edx, dword [ecx]
push 0x18
call dword [edx + 4]
test al, al
je 0x4b27ad
mov eax, dword [0x703a9c]
test eax, eax
jle 0x4b27ad
fld dword [esp + 0x1c]
fadd dword [0x6a86cc]
fstp dword [esp + 0x1c]
mov ecx, dword [0x7034d4]
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4b2fdc
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 2
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov edx, dword [0x6f3574]
push 0x47c35000
push 0x41200000
push edx
mov ecx, 0x21f1c78
call fcn.00530c20
fld dword [0x21f68d0]
fld dword [0x21f68d4]
mov eax, dword [0x21f68d8]
mov ecx, dword [0x21f68dc]
mov edx, dword [0x21f68e0]
mov dword [esp + 0x34], ecx
fld dword [esp + 0x34]
fsub st(2)
mov dword [esp + 0x38], edx
mov dword [esp + 0x60], eax
mov eax, dword [0x21f68e4]
fstp dword [esp + 0x4c]
mov dword [esp + 0x3c], eax
fld dword [esp + 0x38]
lea ecx, [esp + 0x4c]
fsub st(1)
push ecx
mov edx, ecx
push edx
fstp dword [esp + 0x58]
fstp st(0)
fstp st(0)
fld dword [esp + 0x44]
fsub dword [esp + 0x68]
fstp dword [esp + 0x5c]
call fcn.005cf7eb
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 7
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
fld dword [esp + 0x4c]
fmul dword [0x6ad9fc]
push 0
push 0
push 0
fstp dword [esp + 0x4c]
lea edx, [esp + 0xcc]
fld dword [esp + 0x5c]
push edx
fmul dword [0x6ad9fc]
fstp dword [esp + 0x54]
fld dword [esp + 0x64]
fmul dword [0x6ad9fc]
fstp dword [esp + 0x58]
call fcn.005d0e4f
fld dword [esp + 0x40]
mov eax, dword [esp + 0x48]
fsub dword [0x6ad9f8]
mov dword [esp + 0x60], eax
fst dword [esp + 0x58]
fld dword [esp + 0x44]
fsub dword [0x6a7758]
fst dword [esp + 0x5c]
fxch st(1)
fstp dword [esp + 0xb4]
fld dword [esp + 0x44]
mov edx, eax
fadd dword [0x6a7758]
mov ecx, eax
mov dword [esp + 0xa4], edx
mov dword [esp + 0xb0], edx
fst dword [esp + 0x20]
lea edx, [esp + 0xc0]
fstp dword [esp + 0xb8]
mov dword [esp + 0xbc], ecx
fld dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
fadd dword [0x6ad9f8]
push edx
push pe_nt_image_headers32
mov dword [esp + 0xb4], ecx
fst dword [esp + 0x20]
mov eax, dword [esp + 0x20]
fstp dword [esp + 0xa4]
mov dword [esp + 0xb0], eax
mov eax, dword [0x21f1c70]
fstp dword [esp + 0xa8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov edx, dword [ebx + 0x3f78]
mov eax, dword [edx + 4]
mov edx, dword [esp + 0xa8]
push eax
mov eax, dword [esp + 0xb0]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0xc0]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0xc0]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0xe4]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x94]
mov dword [ecx + 4], eax
mov eax, dword [0x21f1c70]
mov dword [ecx + 8], edx
push eax
mov ecx, ebx
call fcn.004b0710
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [ebx + 0x3fa4]
push eax
lea ecx, [esp + 0x204]
push ecx
call fcn.005d0f75
push 0xbf060a92
lea edx, [esp + 0x284]
push edx
call fcn.005d1018
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
push eax
push ecx
push edx
lea eax, [esp + 0xcc]
push eax
call fcn.005d0e4f
lea ecx, [esp + 0x280]
push ecx
lea edx, [esp + 0x204]
push edx
lea eax, [esp + 0x60]
push eax
call fcn.005d04b8
mov ecx, 0x10
lea esi, [esp + 0x58]
lea edi, [esp + 0x240]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0xc0]
push ecx
lea edx, [esp + 0x244]
push edx
lea eax, [esp + 0x1c8]
push eax
call fcn.005d04b8
mov eax, dword [0x21f1c70]
lea edx, [esp + 0x140]
push edx
mov ecx, 0x10
lea esi, [esp + 0x1c4]
lea edi, [esp + 0x144]
push pe_nt_image_headers32
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x16
push eax
call dword [ecx + 0xe4]
mov ecx, dword [ebx + 0x3f80]
call fcn.004b25b0
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
fld dword [esp + 0xf4]
fadd dword [0x6a8504]
mov eax, dword [0x21f1c70]
fstp dword [esp + 0xf4]
fld dword [esp + 0xf8]
fadd dword [0x6ad9f4]
fstp dword [esp + 0xf8]
mov ecx, dword [eax]
lea edx, [esp + 0xc0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x3f90]
call fcn.004b25b0
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x21f1fb8]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push ecx
push 0x22
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0x23
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 3
push 0x8c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0x30
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
mov dword [esp + 0x18], 0x41a00000
mov edx, dword [esp + 0x18]
push edx
push 0x24
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
mov dword [esp + 0x18], 0x43fa0000
mov edx, dword [esp + 0x18]
push edx
push 0x25
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x89
push eax
call dword [ecx + 0xe4]
mov ecx, 0x7072a0
call fcn.004469c0
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x21f1fb8]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push ecx
push 0x22
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0x23
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 3
push 0x8c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0x30
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
mov dword [esp + 0x18], 0x41a00000
mov edx, dword [esp + 0x18]
push edx
push 0x24
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
mov dword [esp + 0x18], 0x447a0000
mov edx, dword [esp + 0x18]
push edx
push 0x25
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov edx, dword [ebx + 0x3fa8]
push edx
lea eax, [esp + 0x184]
push eax
call fcn.005d0f75
fld dword [esp + 0x3c]
fadd dword [0x6a8638]
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x44]
fsub dword [0x6a852c]
fstp dword [esp + 4]
fld dword [esp + 0x40]
fadd dword [0x6a8690]
lea ecx, [esp + 0xcc]
fstp dword [esp]
push ecx
call fcn.005d0e4f
lea edx, [esp + 0xc0]
push edx
lea eax, [esp + 0x184]
push eax
lea ecx, [esp + 0x1c8]
push ecx
call fcn.005d04b8
mov eax, dword [0x21f1c70]
mov ecx, 0x10
lea esi, [esp + 0x1c0]
lea edi, [esp + 0x100]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0x100]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov eax, dword [0x21f1c70]
fld dword [esp + 0x174]
lea ecx, [esp + 0x100]
fsub dword [0x6a8638]
push ecx
push pe_nt_image_headers32
push eax
fstp dword [esp + 0x140]
mov edx, dword [eax]
call dword [edx + 0xb0]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
lea ecx, [esp + 0xc0]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x3f8c]
call fcn.004b25b0
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 7
push eax
call dword [edx + 0xe4]
mov ecx, dword [ebx + 0x3fa0]
test ecx, ecx
je 0x4b2f71
mov eax, dword [0x21f1c70]
mov edx, dword [0x703c14]
push eax
push edx
call fcn.0051d560
mov ecx, dword [ebx + 0x3f94]
test ecx, ecx
je 0x4b2f8d
mov eax, dword [0x21f1c70]
mov edx, dword [0x703c14]
push eax
push edx
call fcn.0051d560
mov ecx, dword [ebx + 0x3f98]
test ecx, ecx
je 0x4b2fa9
mov eax, dword [0x21f1c70]
mov edx, dword [0x703c14]
push eax
push edx
call fcn.0051d560
mov ecx, dword [ebx + 0x3f9c]
test ecx, ecx
je 0x4b2fc5
mov eax, dword [0x21f1c70]
mov edx, dword [0x703c14]
push eax
push edx
call fcn.0051d560
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
jmp 0x4b37f7
mov ecx, dword [0x7034d4]
mov edx, dword [ecx]
push 0xe
call dword [edx + 4]
test al, al
je 0x4b37f7
mov eax, dword [0x6f3574]
push 0x49742400
push 0x3dcccccd
push eax
mov ecx, 0x21f1c78
call fcn.00530c20
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0x142
push eax
call dword [ecx + 0x164]
push 0x44480000
push 0x44bb8000
push 0
lea edx, [esp + 0xcc]
push edx
call fcn.005d0e4f
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
lea edx, [esp + 0xc0]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x3c2c]
push 0
call fcn.0052d120
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0x18
mov edx, dword [ebx + 0x3c10]
push 0
push edx
push 0
push eax
call dword [ecx + 0x190]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4b3886
push 0x44160000
push 0x44228000
push 0x42c80000
lea edx, [esp + 0xcc]
push edx
call fcn.005d0e4f
mov eax, dword [ebx + 0x3c44]
push eax
lea ecx, [esp + 0x144]
push ecx
call fcn.005d0f75
lea edx, [esp + 0xc0]
push edx
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0x188]
push ecx
call fcn.005d04b8
mov eax, dword [0x21f1c70]
mov ecx, 0x10
lea esi, [esp + 0x180]
lea edi, [esp + 0x100]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0x100]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x3c14]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0x18
push 0
push ecx
push 0
push eax
call dword [edx + 0x190]
mov ecx, dword [ebx + 0x3c24]
push 0
call fcn.0052d120
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 0
push 6
push eax
call dword [edx + 0x144]
test eax, eax
jl 0x4b3886
push 0x3fc90fdb
lea eax, [esp + 0x144]
push eax
call fcn.005d0ed3
push 0x44fa0000
push 0x44160000
push 0
lea ecx, [esp + 0xcc]
push ecx
call fcn.005d0e4f
lea edx, [esp + 0xc0]
push edx
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0x188]
push ecx
call fcn.005d04b8
mov eax, dword [0x21f1c70]
push 0x18
mov ecx, 0x10
lea esi, [esp + 0x184]
lea edi, [esp + 0x104]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x3c1c]
mov edx, dword [eax]
push 0
push ecx
push 0
push eax
call dword [edx + 0x190]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
lea ecx, [esp + 0x100]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x3c28]
push 0
call fcn.0052d120
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 0
push 6
push eax
call dword [edx + 0x144]
test eax, eax
jl 0x4b3886
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 6
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 3
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 5
push 1
push 0
push eax
call dword [edx + 0x10c]
lea eax, [ebx + 0x3ea8]
lea ecx, [ebx + 0x3ef8]
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], ecx
jmp 0x4b3320
mov esi, dword [esp + 0x28]
fld dword [esi]
fcomp dword [0x6aa3c0]
fnstsw ax
test ah, 0x41
jne 0x4b3404
fld dword [0x703c14]
fmul dword [0x6a8690]
fsubr dword [esi]
fst dword [esp + 0x24]
fstp dword [esi]
fld dword [esp + 0x24]
fcomp dword [0x6ad9f0]
fnstsw ax
test ah, 5
jp 0x4b3386
fld dword [esp + 0x24]
fcomp dword [0x6a8674]
fnstsw ax
test ah, 0x41
jne 0x4b3386
call fcn.005b91d1
and eax, 0x80000003
jns 0x4b33b9
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4b34ca
fld dword [esp + 0x24]
fcomp dword [0x6ad9ec]
fnstsw ax
test ah, 5
jp 0x4b33c1
fld dword [esp + 0x24]
fcomp dword [0x6a84d0]
fnstsw ax
test ah, 0x41
jne 0x4b33c1
call fcn.005b91d1
and eax, 0x80000003
jns 0x4b33b9
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4b34ca
fld dword [esp + 0x24]
fcomp dword [0x6ad9e8]
fnstsw ax
test ah, 5
jp 0x4b34ca
fld dword [esp + 0x24]
fcomp dword [0x6a868c]
fnstsw ax
test ah, 0x41
jne 0x4b34ca
call fcn.005b91d1
and eax, 0x80000003
jns 0x4b33b9
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4b34ca
mov edi, dword [sym.imp.kernel32.dll_GetTickCount]
call edi
sub eax, dword [ebx + 0x3ea4]
cmp eax, 0x5dc
jbe 0x4b34ca
mov dword [esi], 0x3f800000
call fcn.005b91d1
and eax, 0x80000003
jns 0x4b3434
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
call fcn.005b91d1
cdq
mov ecx, 0x7d0
idiv ecx
mov dword [esp + 0x24], edx
fild dword [esp + 0x24]
fstp dword [esp + 0x30]
call fcn.005b91d1
cdq
mov ecx, 0x5dc
idiv ecx
mov dword [esp + 0x5c], 0
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x24], edx
fild dword [esp + 0x24]
mov edx, dword [esp + 0x20]
fld dword [0x21f68d0]
fsub dword [0x6a7610]
fadd dword [esp + 0x30]
fstp dword [esp + 0x58]
mov eax, dword [esp + 0x58]
fadd dword [0x21f68d8]
mov dword [edx], eax
mov dword [edx + 4], ecx
fadd dword [0x6ad9e4]
fstp dword [esp + 0x60]
mov eax, dword [esp + 0x60]
mov dword [edx + 8], eax
call fcn.005b91d1
cdq
mov ecx, 0x3e8
idiv ecx
mov eax, edx
mov dword [esp + 0x30], eax
call edi
mov ecx, dword [esp + 0x30]
sub eax, ecx
mov dword [ebx + 0x3ea4], eax
fld dword [esi]
fcomp dword [0x6aa3c0]
fnstsw ax
test ah, 0x41
jne 0x4b35f6
push 0x3fc90fdb
lea edx, [esp + 0x144]
push edx
call fcn.005d0ed3
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 8]
mov edx, dword [eax]
push ecx
push 0x443b8000
push edx
lea eax, [esp + 0xcc]
push eax
call fcn.005d0e4f
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0x28]
cmp eax, 3
ja case.default.0x4b3518
jmp dword [eax*4 + 0x4b41e8]
mov ecx, dword [ebx + 0x3c34]
jmp 0x4b353d
mov ecx, dword [ebx + 0x3c38]
jmp 0x4b353d
mov ecx, dword [ebx + 0x3c3c]
jmp 0x4b353d
mov ecx, dword [ebx + 0x3c40]
push 0
call fcn.0052d120
lea edx, [esp + 0xc0]
push edx
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0x188]
push ecx
call fcn.005d04b8
mov eax, dword [0x21f1c70]
mov ecx, 0x10
lea esi, [esp + 0x180]
lea edi, [esp + 0x100]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0x100]
push ecx
push pe_nt_image_headers32
push eax
call dword [edx + 0xb0]
mov edx, dword [esp + 0x28]
mov esi, dword [0x21f1c70]
fld dword [edx]
mov edi, dword [esi]
fmul dword [0x6a8534]
call fcn.005b8b18
movzx eax, al
shl eax, 0x18
or eax, 0xffffff
push eax
push 0x3c
push esi
call dword [edi + 0xe4]
mov edx, dword [ebx + 0x3c18]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0x18
push 0
push edx
push 0
push eax
call dword [ecx + 0x190]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4b3886
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
inc eax
add esi, 4
add edx, 0xc
cmp eax, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], esi
mov dword [esp + 0x20], edx
jl 0x4b3320
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 2
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 4
push 1
push 0
push eax
call dword [ecx + 0x10c]
lea edx, [ebx + 0x3c48]
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], edx
mov eax, dword [ebx + 0x3ea0]
push eax
lea ecx, [esp + 0x184]
push ecx
call fcn.005d0f75
push 0x3fc90fdb
lea edx, [esp + 0x144]
push edx
call fcn.005d0ed3
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push 0xc0a00000
push ecx
push edx
lea eax, [esp + 0xcc]
push eax
call fcn.005d0e4f
lea ecx, [esp + 0x140]
push ecx
lea edx, [esp + 0x184]
push edx
lea eax, [esp + 0x1c8]
push eax
call fcn.005d04b8
mov ecx, 0x10
lea esi, [esp + 0x1c0]
lea edi, [esp + 0x240]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0xc0]
push ecx
lea edx, [esp + 0x244]
push edx
lea eax, [esp + 0x208]
push eax
call fcn.005d04b8
mov edx, dword [ebx + 0x3c20]
mov eax, dword [0x21f1c70]
push 0x18
push 0
push edx
mov ecx, 0x10
lea esi, [esp + 0x20c]
lea edi, [esp + 0x10c]
push 0
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x190]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
lea edx, [esp + 0x100]
push edx
push pe_nt_image_headers32
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x3c30]
push 0
call fcn.0052d120
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4b3886
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
inc eax
add edx, 0xc
cmp eax, 0x32
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], edx
jl 0x4b3680
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x703a34]
mov ecx, dword [0x703a38]
mov edx, dword [0x6f3574]
push eax
push ecx
push edx
mov ecx, 0x21f1c78
call fcn.00530c20
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, 0x21f1c78
call fcn.005327b0
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 5
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 7
push 0
push eax
call dword [edx + 0x114]
cmp dword [0x6f3558], 1
jne 0x4b3897
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b3893
mov eax, dword [ecx]
push 0x18
call dword [eax + 4]
test al, al
je 0x4b3893
mov eax, dword [0x703a9c]
test eax, eax
mov eax, dword [0x6f355c]
lea ecx, [ebx + 0xac]
cdq
jle 0x4b388f
push 0xffffffffffffff9c
jmp 0x4b38b2
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
jmp 0x4b38b2
push 0
jmp 0x4b38a6
mov eax, dword [0x6f3560]
cdq
and edx, 0xf
add eax, edx
sar eax, 4
push eax
mov eax, dword [0x6f355c]
cdq
lea ecx, [ebx + 0xac]
sub eax, edx
sar eax, 1
sub eax, 0x100
push eax
call fcn.00538c10
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 4
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x21f1c70]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x21f1c70]
mov edx, dword [eax]
push 0
push 6
push 0
push eax
call dword [edx + 0x10c]
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b39da
mov eax, dword [ecx]
push 0x18
call dword [eax + 4]
test al, al
je 0x4b39d4
mov eax, dword [ebx + 0x3bf8]
test eax, eax
jne 0x4b39d4
cmp dword [0x6f355c], 0x400
jl 0x4b39d4
cmp dword [0x6f3560], 0x300
jl 0x4b39d4
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b39bb
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4b39bb
fld dword [ebx + 0x3fb0]
fcomp dword [0x6a8524]
fnstsw ax
test ah, 5
jp 0x4b39ac
mov eax, dword [ebx + 0x3f70]
mov ecx, dword [ebx + 0x3fb0]
mov dword [eax + 0x374], ecx
mov edx, dword [0x21f1c70]
mov eax, dword [0x703c14]
push edx
push eax
jmp 0x4b39c9
mov ecx, dword [0x21f1c70]
mov edx, dword [0x703c14]
push ecx
push edx
mov ecx, dword [ebx + 0x3f70]
call fcn.00507a10
mov ecx, dword [0x7034d4]
mov eax, dword [ebx + 0x3bf8]
test eax, eax
je 0x4b39f4
lea ecx, [ebx + 0x100]
call fcn.004dd860
jmp 0x4b41b7
mov eax, dword [0x2225648]
test eax, eax
je 0x4b3d89
mov edx, dword [eax + 0x200]
test edx, edx
je 0x4b3d89
mov eax, dword [0x6f355c]
fld dword [esp + 0x1c]
cdq
sub eax, edx
mov edi, eax
sar edi, 1
sub edi, 0x2e
mov byte [ebx + 0xfc], 2
call fcn.005b8b18
push eax
mov eax, dword [0x6f355c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x80
push eax
lea ecx, [ebx + 0xcc]
call fcn.00538c10
fld dword [esp + 0x1c]
mov eax, dword [0x2225648]
fadd dword [0x6aa51c]
add eax, 0x230
lea edx, [eax + 1]
fstp dword [esp + 0x1c]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4b3a65
sub eax, edx
mov dword [esp + 0x30], eax
je 0x4b3a9d
fld dword [esp + 0x1c]
fsub dword [0x6a84f8]
call fcn.005b8b18
push eax
mov eax, dword [0x6f355c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x5a
push eax
lea ecx, [ebx + 0xdc]
call fcn.00538c10
mov eax, dword [0x2225648]
mov cl, byte [eax + 0x207]
xor esi, esi
test cl, cl
jbe 0x4b3b65
mov dword [esp + 0x20], esi
jmp 0x4b3ac0
fild dword [esp + 0x20]
fadd dword [esp + 0x1c]
fst dword [esp + 0x18]
call fcn.005b8b18
push eax
mov eax, dword [0x6f355c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x40
push eax
lea ecx, [ebx + 0xbc]
call fcn.00538c10
mov eax, dword [0x2225648]
movsx ecx, byte [eax + esi*2 + 0x209]
movsx edx, byte [eax + esi*2 + 0x208]
push ecx
push edx
lea eax, [esp + 0x60]
push 0x6ad9dc
push eax
call fcn.005b8b8d
add esp, 0x10
fld dword [esp + 0x18]
lea ecx, [esp + 0x58]
fadd dword [0x6a864c]
push ecx
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005b8b18
push eax
push edi
mov ecx, 0x21f1c78
call fcn.00533760
add dword [esp + 0x20], 0x16
mov edx, dword [0x2225648]
movzx eax, byte [edx + 0x207]
inc esi
cmp esi, eax
jl 0x4b3ac0
cmp byte [ebx + 0xfc], 2
jne 0x4b41b7
push 1
mov ecx, 0x21ec34c
call fcn.005218f0
xor ecx, ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ecx
mov ecx, 0x21ec34c
call fcn.00522220
push eax
movzx eax, byte [ebx + 0x5e]
lea edx, [ebx + eax*2]
lea eax, [eax + edx + 0x5f]
push 0x6a9d2c
push eax
call fcn.005b8b8d
mov eax, dword [0x6f355c]
cdq
sub eax, edx
mov edi, eax
mov eax, dword [0x2225648]
mov cl, byte [eax + 0x207]
sar edi, 1
add edi, 0x12
add esp, 0xc
xor esi, esi
test cl, cl
mov dword [esp + 0x18], edi
jbe 0x4b3d14
lea ecx, [ebx + 0x5f]
mov dword [esp + 0x20], esi
mov dword [esp + 0x28], ecx
jmp 0x4b3c00
fild dword [esp + 0x20]
fadd dword [esp + 0x1c]
fadd dword [0x6a864c]
call fcn.005b8b18
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x28]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4b3c20
sub eax, edx
xor ecx, ecx
test eax, eax
mov dword [esp + 0x30], eax
jle 0x4b3c52
mov ecx, eax
mov edx, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x58]
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov edi, dword [esp + 0x18]
mov ecx, edx
movzx eax, byte [ebx + 0x5e]
cmp esi, eax
mov byte [esp + ecx + 0x58], 0
jne 0x4b3cbe
fld dword [0x84f744]
lea ecx, [esp + 0x58]
fadd dword [0x703c14]
fst dword [0x84f744]
fcomp dword [0x6a84d0]
fnstsw ax
test ah, 0x41
jne 0x4b3c8d
push ecx
push 0x6a9d2c
mov edx, ecx
push edx
jmp 0x4b3c98
lea eax, [esp + 0x58]
push eax
push 0x6acfe4
push ecx
call dword [sym.imp.user32.dll_wsprintfA]
fld dword [0x84f744]
fcomp dword [0x6a8210]
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x4b3cbe
mov dword [0x84f744], 0
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x58]
push edx
push 0x96
push 0
push 0xff
push 0xff
push 0xff
push eax
push edi
mov ecx, 0x21f1c78
call fcn.00533760
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
add eax, 3
add ecx, 0x16
mov dword [esp + 0x28], eax
mov eax, dword [0x2225648]
mov dword [esp + 0x20], ecx
movzx ecx, byte [eax + 0x207]
inc esi
cmp esi, ecx
jl 0x4b3c00
add eax, 0x230
mov ecx, eax
lea esi, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4b3d20
sub ecx, esi
mov dword [esp + 0x30], ecx
je 0x4b3d6e
fld dword [esp + 0x1c]
push eax
fsub dword [0x6a8500]
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005b8b18
push eax
mov eax, dword [0x6f355c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xa
push eax
mov ecx, 0x21f1c78
call fcn.00533760
lea ecx, [ebx + 0x324c]
call fcn.00516ea0
lea ecx, [ebx + 0x3720]
call fcn.00516ea0
jmp 0x4b41b7
test ecx, ecx
je 0x4b3de9
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4b3de9
fld dword [ebx + 0x3fb0]
fcomp dword [0x6a7600]
fnstsw ax
test ah, 0x41
jne 0x4b3e08
fld dword [esp + 0x1c]
call fcn.005b8b18
fld dword [esp + 0x2c]
push eax
call fcn.005b8b18
fld dword [ebx + 0x3fb0]
fmul dword [0x6a8534]
push eax
call fcn.005b8b18
movzx eax, al
shl eax, 0x18
or eax, 0xffffff
push eax
lea ecx, [ebx + 0x9c]
call fcn.00539190
jmp 0x4b3e08
fld dword [esp + 0x1c]
call fcn.005b8b18
fld dword [esp + 0x2c]
push eax
call fcn.005b8b18
push eax
lea ecx, [ebx + 0x9c]
call fcn.00538c10
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b3e68
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4b3e68
fld dword [ebx + 0x3fb0]
fcomp dword [0x6aa3d4]
fnstsw ax
test ah, 0x41
jne 0x4b3eb4
lea ecx, [ebx + 0x1a28]
call fcn.00516ea0
lea ecx, [ebx + 0x1efc]
call fcn.00516ea0
lea ecx, [ebx + 0x23d0]
call fcn.00516ea0
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b3eb4
mov eax, dword [ecx]
push 0x33
call dword [eax + 4]
jmp 0x4b3e9a
lea ecx, [ebx + 0x1a28]
call fcn.00516ea0
lea ecx, [ebx + 0x1efc]
call fcn.00516ea0
lea ecx, [ebx + 0x23d0]
call fcn.00516ea0
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b3eb4
mov edx, dword [ecx]
push 0x33
call dword [edx + 4]
test al, al
je 0x4b3eb4
lea ecx, [ebx + 0x28a4]
call fcn.00516ea0
lea ecx, [ebx + 0x2d78]
call fcn.00516ea0
mov al, byte [ebx + 0xfc]
test al, al
jne 0x4b3fd9
push 0
mov ecx, 0x21ec34c
call fcn.005218f0
mov ecx, 0x21ec34c
call fcn.00522220
push eax
lea eax, [ebx + 4]
push 0x6a9d2c
push eax
call fcn.005b8b8d
add esp, 0xc
xor eax, eax
mov ecx, 0x80
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
lea eax, [ebx + 0x27]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4b3f00
sub eax, edx
mov edx, eax
xor eax, eax
test edx, edx
jle 0x4b3f2f
mov ecx, edx
mov esi, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
mov eax, edx
mov ecx, dword [0x7034d4]
test ecx, ecx
mov byte [esp + eax + 0x2c0], 0
je 0x4b3fa2
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4b3fa2
fld dword [ebx + 0x3fb0]
fcomp dword [0x6aa3d4]
fnstsw ax
test ah, 0x41
jne 0x4b41b7
fld dword [esp + 0x2c]
fadd dword [0x6ad9d8]
call fcn.005b8b18
fld dword [esp + 0x1c]
fadd dword [0x6ad9d4]
push 0
push 0
mov esi, eax
push 0
call fcn.005b8b18
push eax
push esi
mov ecx, 0x21f1c78
call fcn.00535050
lea eax, [esp + 0x2c0]
push eax
jmp 0x4b4186
fld dword [esp + 0x2c]
fadd dword [0x6ad9d8]
call fcn.005b8b18
fld dword [esp + 0x1c]
fadd dword [0x6ad9d4]
push 0
push 0
mov esi, eax
push 0
call fcn.005b8b18
push eax
push esi
mov ecx, 0x21f1c78
call fcn.00535050
jmp 0x4b417e
cmp al, 1
jne 0x4b41b7
push 1
mov ecx, 0x21ec34c
call fcn.005218f0
mov ecx, 0x21ec34c
lea esi, [ebx + 0x27]
call fcn.00522220
push eax
push 0x6a9d2c
push esi
call fcn.005b8b8d
add esp, 0xc
xor eax, eax
mov ecx, 0x80
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4b4020
sub eax, edx
mov edx, eax
xor eax, eax
test edx, edx
jle 0x4b404f
mov ecx, edx
mov esi, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
mov eax, edx
fld dword [0x84f744]
mov byte [esp + eax + 0x2c0], 0
fadd dword [0x703c14]
lea edx, [esp + 0x2c0]
fst dword [0x84f744]
fcomp dword [0x6a84d0]
fnstsw ax
test ah, 0x41
jne 0x4b4088
push edx
push 0x6a9d2c
mov eax, edx
push eax
jmp 0x4b4096
lea ecx, [esp + 0x2c0]
push ecx
push 0x6acfe4
push edx
call dword [sym.imp.user32.dll_wsprintfA]
fld dword [0x84f744]
fcomp dword [0x6a8210]
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x4b40bc
mov dword [0x84f744], 0
mov ecx, dword [0x7034d4]
test ecx, ecx
je 0x4b4138
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4b4138
fld dword [ebx + 0x3fb0]
fcomp dword [0x6aa3d4]
fnstsw ax
test ah, 0x41
jne 0x4b41b7
fld dword [esp + 0x2c]
fadd dword [0x6ad9d8]
call fcn.005b8b18
fld dword [esp + 0x1c]
fadd dword [0x6ad9d4]
lea ecx, [ebx + 4]
push ecx
push 0x96
push 0
push 0xff
push 0xff
mov esi, eax
push 0xff
call fcn.005b8b18
push eax
push esi
mov ecx, 0x21f1c78
call fcn.00533760
lea edx, [esp + 0x2c0]
push edx
jmp 0x4b4186
fld dword [esp + 0x2c]
fadd dword [0x6ad9d8]
call fcn.005b8b18
fld dword [esp + 0x1c]
fadd dword [0x6ad9d4]
mov esi, eax
lea eax, [ebx + 4]
push eax
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005b8b18
push eax
push esi
mov ecx, 0x21f1c78
call fcn.00533760
lea ecx, [esp + 0x2c0]
push ecx
fld dword [esp + 0x20]
push 0x96
fadd dword [0x6ad9d0]
push 0
push 0xff
push 0xff
push 0xff
call fcn.005b8b18
push eax
mov ecx, 0x21f1c78
push esi
call fcn.00533760
cmp dword [0x6f3558], 4
je 0x4b41cf
mov ecx, dword [ebx + 0x3c0c]
test ecx, ecx
je 0x4b41cf
call fcn.004bd040
mov ecx, 0x7063a0
call fcn.0041db30
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret