Function at 0x46b5f0
Capabilities:
Authenticate hmac

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ae890
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xad8
mov eax, dword [0x4cfa1c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0x7d4], edi
mov dword [ebp - 0x7f4], ecx
mov dword [ebp - 0x7b4], 0
mov dword [ebp - 0x798], 0xc659418
mov dword [ebp - 0x794], 0x332f93db
mov eax, dword [ebp - 0x798]
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0xa30], eax
mov dword [ebp - 0xa2c], edx
mov dword [ebp - 0x798], 0x1f6797bc
mov dword [ebp - 0x794], 0xb9ca35ef
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0xa28], eax
mov dword [ebp - 0xa24], ecx
mov dword [ebp - 0x798], 0x670afb7b
mov dword [ebp - 0x794], 0x335cf6b2
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x798], 0x1f6797bc
mov dword [ebp - 0x794], 0xb9ca35ef
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x7a8], eax
lea eax, [ebp - 0xa30]
mov dword [ebp - 0x7ac], ecx
mov ecx, dword [ebp - 0x794]
movaps xmm1, xmmword [ebp - 0xa30]
mov dword [ebp - 0x7a4], ecx
mov ecx, edi
pxor xmm1, xmmword [ebp - 0x7b0]
mov dword [ebp - 0x954], eax
lea eax, [ebp - 0x954]
push eax
movaps xmmword [ebp - 0xa30], xmm1
call fcn.004785c0
test al, al
je 0x46c139
mov dword [ebp - 0x798], 0xc659418
sub esp, 0x18
mov dword [ebp - 0x794], 0x332f93db
mov edx, esp
mov eax, dword [ebp - 0x798]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x9dc], ecx
mov dword [ebp - 0x9e0], eax
mov dword [ebp - 0x798], 0x1f6797bc
mov dword [ebp - 0x794], 0xb9ca35ef
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x9d4], ecx
mov dword [ebp - 0x9d8], eax
mov dword [ebp - 0x798], 0x670afb7b
mov dword [ebp - 0x794], 0x335cf6b2
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x798], 0x1f6797bc
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x7ac], ecx
mov dword [ebp - 0x794], 0xb9ca35ef
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x794]
movaps xmm1, xmmword [ebp - 0x9e0]
mov dword [ebp - 0x7a4], ecx
lea ecx, [ebp - 0x9e0]
mov dword [ebp - 0x7a8], eax
lea esi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x7b0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x7b8], esp
movaps xmmword [ebp - 0x9e0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46b820
sub ecx, esi
lea eax, [ebp - 0x9e0]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov dword [ebp - 4], 0
mov dword [ebp - 4], 0xffffffff
mov ecx, edi
call fcn.00444940
push 0x48
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x210]
lea ecx, [ebp - 0x68]
push eax
call fcn.00476850
mov dword [ebp - 4], 1
lea eax, [ebp - 0x740]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x740]
lea ecx, [ebp - 0x68]
push eax
call fcn.00476790
mov byte [ebp - 4], 2
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x210]
call fcn.00460cb0
test al, al
je 0x46c0f7
nop dword [eax]
lea ecx, [ebp - 0x210]
call fcn.00476630
push eax
lea ecx, [ebp - 0x380]
call fcn.00445b60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x210]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x308]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x308]
lea ecx, [ebp - 0x6c]
push eax
call fcn.00476850
mov byte [ebp - 4], 4
lea eax, [ebp - 0x548]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x548]
lea ecx, [ebp - 0x6c]
push eax
call fcn.00476790
mov byte [ebp - 4], 5
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x308]
call fcn.00460cb0
test al, al
je 0x46c07b
nop
lea ecx, [ebp - 0x308]
call fcn.00476630
push eax
lea ecx, [ebp - 0x368]
call fcn.00445b60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x308]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x470]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x70]
push eax
call fcn.00476850
mov byte [ebp - 4], 7
lea eax, [ebp - 0x590]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x590]
lea ecx, [ebp - 0x70]
push eax
call fcn.00476790
mov byte [ebp - 4], 8
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x470]
call fcn.00460cb0
test al, al
je 0x46c005
nop
lea ecx, [ebp - 0x210]
call fcn.00476630
push eax
lea ecx, [ebp - 0x350]
call fcn.00445b60
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x210]
call fcn.004769b0
mov esi, eax
xorps xmm0, xmm0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
movups xmmword [ebp - 0xb0], xmm0
call fcn.0045f7d0
lea eax, [ebp - 0x138]
mov ecx, esi
push eax
movups xmmword [ebp - 0x138], xmm0
call fcn.0045f720
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0xb0]
call fcn.00460cb0
test al, al
je 0x46bfcb
nop
lea ecx, [ebp - 0xb0]
call fcn.004769b0
mov dword [ebp - 0x858], 0x1569951e
mov esi, eax
mov dword [ebp - 0x854], 0x562886cb
mov ecx, dword [ebp - 0x858]
mov edx, dword [ebp - 0x854]
mov dword [ebp - 0x9f0], ecx
mov dword [ebp - 0x9ec], edx
mov dword [ebp - 0x860], 0x7306c1d8
mov dword [ebp - 0x85c], 0xb9ca509a
mov eax, dword [ebp - 0x860]
mov ecx, dword [ebp - 0x85c]
mov dword [ebp - 0x9e8], eax
mov dword [ebp - 0x9e4], ecx
mov dword [ebp - 0x828], 0x670afb7b
mov dword [ebp - 0x824], 0x335cf6b2
mov eax, dword [ebp - 0x828]
mov ecx, dword [ebp - 0x824]
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x868], 0x1f6797bc
mov dword [ebp - 0x864], 0xb9ca35ef
mov eax, dword [ebp - 0x868]
mov dword [ebp - 0x7a8], eax
lea eax, [ebp - 0x9f0]
mov dword [ebp - 0x7ac], ecx
mov ecx, dword [ebp - 0x864]
movaps xmm1, xmmword [ebp - 0x9f0]
mov dword [ebp - 0x7a4], ecx
mov ecx, esi
pxor xmm1, xmmword [ebp - 0x7b0]
mov dword [ebp - 0x914], eax
lea eax, [ebp - 0x914]
push eax
mov dword [ebp - 0x7b8], esi
movaps xmmword [ebp - 0x9f0], xmm1
call fcn.004785c0
test al, al
je 0x46bf6a
mov dword [ebp - 0x870], 0x1569951e
sub esp, 0x18
mov dword [ebp - 0x86c], 0x562886cb
mov edx, esp
mov eax, dword [ebp - 0x870]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x86c]
mov dword [ebp - 0x92c], ecx
mov dword [ebp - 0x930], eax
mov dword [ebp - 0x800], 0x7306c1d8
mov dword [ebp - 0x7fc], 0xb9ca509a
mov eax, dword [ebp - 0x800]
mov ecx, dword [ebp - 0x7fc]
mov dword [ebp - 0x924], ecx
mov dword [ebp - 0x928], eax
mov dword [ebp - 0x878], 0x670afb7b
mov dword [ebp - 0x874], 0x335cf6b2
mov eax, dword [ebp - 0x878]
mov ecx, dword [ebp - 0x874]
mov dword [ebp - 0x888], 0x1f6797bc
mov dword [ebp - 0x8a0], eax
mov dword [ebp - 0x89c], ecx
mov dword [ebp - 0x884], 0xb9ca35ef
mov eax, dword [ebp - 0x888]
mov ecx, dword [ebp - 0x884]
movaps xmm1, xmmword [ebp - 0x930]
mov dword [ebp - 0x894], ecx
lea ecx, [ebp - 0x930]
mov dword [ebp - 0x898], eax
lea edi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x8a0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x8b4], esp
movaps xmmword [ebp - 0x930], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46bc40
sub ecx, edi
lea eax, [ebp - 0x930]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 9
mov ecx, esi
call fcn.00444940
lea ecx, [ebp - 0xae8]
push ecx
mov ecx, eax
call fcn.0045a150
mov byte [ebp - 4], 0xb
mov edx, eax
lea ecx, [ebp - 0x338]
call fcn.00448fe0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xae8]
call fcn.00446fc0
lea edx, [ebp - 0x338]
lea ecx, [ebp - 0x108]
call fcn.004639f0
mov byte [ebp - 4], 0xe
cmp byte [ebp - 0xf0], 0
je 0x46bf43
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x108]
cmp dword [ebp - 0xf4], 0x10
lea ecx, [ebp - 0xaa0]
push dword [ebp - 0xf8]
cmovae edx, dword [ebp - 0x108]
call fcn.00448220
or dword [ebp - 0x7b4], 0x200
lea eax, [ebp - 0xaa0]
add esp, 4
lea ecx, [ebp - 0x910]
push eax
call fcn.004486f0
mov byte [ebp - 4], 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x8b8], esp
xorps xmm0, xmm0
push 5
movups xmmword [ecx], xmm0
push str.value
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00438600
mov byte [ebp - 4], 0x11
mov byte [ebp - 4], 0x10
mov ecx, esi
call fcn.00444940
mov edi, eax
mov byte [ebp - 4], 0x12
mov dl, byte [edi]
mov cl, byte [ebp - 0x910]
mov byte [edi], cl
mov eax, dword [ebp - 0x908]
mov ecx, dword [ebp - 0x904]
mov byte [ebp - 0x910], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x908], edx
mov dword [ebp - 0x904], esi
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x908]
push dword [ebp - 0x910]
call fcn.00446660
and dword [ebp - 0x7b4], 0xfffffdff
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xaa0]
call fcn.00446fc0
mov dword [ebp - 0x7c0], 0xc659418
mov dword [ebp - 0x7bc], 0x332f93db
mov eax, dword [ebp - 0x7c0]
mov ecx, dword [ebp - 0x7bc]
mov dword [ebp - 0x990], eax
mov dword [ebp - 0x98c], ecx
mov dword [ebp - 0x7c8], 0x1f6797bc
mov dword [ebp - 0x7c4], 0xb9ca35ef
mov eax, dword [ebp - 0x7c8]
mov ecx, dword [ebp - 0x7c4]
mov dword [ebp - 0x988], eax
mov dword [ebp - 0x984], ecx
mov dword [ebp - 0x7d0], 0x670afb7b
mov dword [ebp - 0x7cc], 0x335cf6b2
mov eax, dword [ebp - 0x7d0]
mov ecx, dword [ebp - 0x7cc]
mov dword [ebp - 0x790], 0x1f6797bc
mov dword [ebp - 0x8b0], eax
mov dword [ebp - 0x78c], 0xb9ca35ef
mov eax, dword [ebp - 0x790]
mov dword [ebp - 0x8ac], ecx
mov ecx, dword [ebp - 0x78c]
movaps xmm1, xmmword [ebp - 0x990]
mov dword [ebp - 0x8a8], eax
mov dword [ebp - 0x8a4], ecx
pxor xmm1, xmmword [ebp - 0x8b0]
movaps xmmword [ebp - 0x990], xmm1
sub esp, 0x18
lea ecx, [ebp - 0x990]
mov edx, esp
mov dword [ebp - 0x8bc], esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46be93
sub ecx, esi
lea eax, [ebp - 0x990]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x13
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x7f4]
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x380]
mov dword [ebp - 0x8c0], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 0xe
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x368]
mov dword [ebp - 0x8c4], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x15
mov byte [ebp - 4], 0xe
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x350]
mov dword [ebp - 0x794], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x16
mov byte [ebp - 4], 0xe
mov ecx, esi
call fcn.00444940
push dword [ebp - 0x7b8]
mov ecx, eax
call fcn.00444760
mov byte [ebp - 4], 0xd
cmp byte [ebp - 0xf0], 0
je 0x46bf5b
lea ecx, [ebp - 0x108]
call fcn.00446fc0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x338]
call fcn.00446fc0
mov eax, dword [ebp - 0xb0]
movzx eax, byte [eax]
cmp eax, 9
ja case.0x46bf7f.0
movzx eax, byte [eax + 0x46da88]
jmp dword [eax*4 + 0x46da7c]
mov eax, dword [ebp - 0xac]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], eax
call fcn.00447410
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xac], eax
jmp 0x46bfb1
add dword [ebp - 0xa8], 0x10
jmp 0x46bfb1
inc dword [ebp - 0xa4]
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0xb0]
call fcn.00460cb0
test al, al
jne 0x46ba50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x350]
call fcn.00446fc0
lea ecx, [ebp - 0x470]
call fcn.0045f540
inc dword [ebp - 0x460]
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x470]
call fcn.00460cb0
test al, al
jne 0x46b9e0
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x560]
call fcn.00446fc0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x578]
call fcn.00446fc0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x440]
call fcn.00446fc0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x458]
call fcn.00446fc0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x368]
call fcn.00446fc0
lea ecx, [ebp - 0x308]
call fcn.0045f540
inc dword [ebp - 0x2f8]
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x308]
call fcn.00460cb0
test al, al
jne 0x46b950
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x518]
call fcn.00446fc0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x530]
call fcn.00446fc0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x2d8]
call fcn.00446fc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f0]
call fcn.00446fc0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x380]
call fcn.00446fc0
lea ecx, [ebp - 0x210]
call fcn.0045f540
inc dword [ebp - 0x200]
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x210]
call fcn.00460cb0
test al, al
jne 0x46b8c0
mov edi, dword [ebp - 0x7d4]
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x710]
call fcn.00446fc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x728]
call fcn.00446fc0
mov dword [ebp - 4], 0x27
lea ecx, [ebp - 0x1e0]
call fcn.00446fc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f8]
call fcn.00446fc0
mov dword [ebp - 0x790], 0xe6d9417
mov dword [ebp - 0x78c], 0x335c85dc
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0xa00], eax
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 0x790], 0x1f6797bc
mov dword [ebp - 0x78c], 0xb9ca35ef
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x9f8], eax
mov dword [ebp - 0x9f4], ecx
mov dword [ebp - 0x790], 0x670afb7b
mov dword [ebp - 0x78c], 0x335cf6b2
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x790], 0x1f6797bc
mov dword [ebp - 0x78c], 0xb9ca35ef
mov eax, dword [ebp - 0x790]
mov dword [ebp - 0x7a8], eax
lea eax, [ebp - 0xa00]
mov dword [ebp - 0x7ac], ecx
mov ecx, dword [ebp - 0x78c]
movaps xmm1, xmmword [ebp - 0xa00]
mov dword [ebp - 0x7a4], ecx
mov ecx, edi
pxor xmm1, xmmword [ebp - 0x7b0]
mov dword [ebp - 0x918], eax
lea eax, [ebp - 0x918]
push eax
movaps xmmword [ebp - 0xa00], xmm1
call fcn.004785c0
test al, al
je 0x46ce5f
mov dword [ebp - 0x790], 0xe6d9417
sub esp, 0x18
mov dword [ebp - 0x78c], 0x335c85dc
mov edx, esp
mov eax, dword [ebp - 0x790]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x96c], ecx
mov dword [ebp - 0x970], eax
mov dword [ebp - 0x790], 0x1f6797bc
mov dword [ebp - 0x78c], 0xb9ca35ef
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x964], ecx
mov dword [ebp - 0x968], eax
mov dword [ebp - 0x790], 0x670afb7b
mov dword [ebp - 0x78c], 0x335cf6b2
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x790], 0x1f6797bc
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x7ac], ecx
mov dword [ebp - 0x78c], 0xb9ca35ef
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x78c]
movaps xmm1, xmmword [ebp - 0x970]
mov dword [ebp - 0x7a4], ecx
lea ecx, [ebp - 0x970]
mov dword [ebp - 0x7a8], eax
lea esi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x7b0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x794], esp
movaps xmmword [ebp - 0x970], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46c310
sub ecx, esi
lea eax, [ebp - 0x970]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov dword [ebp - 4], 0x29
mov dword [ebp - 4], 0xffffffff
mov ecx, edi
call fcn.00444940
push 0x48
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x1c8]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x1c8]
lea ecx, [ebp - 0x78]
push eax
call fcn.00476850
mov dword [ebp - 4], 0x2a
lea eax, [ebp - 0x620]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x620]
lea ecx, [ebp - 0x78]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x620]
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00460cb0
test al, al
je 0x46ce1d
nop dword [eax]
lea ecx, [ebp - 0x1c8]
call fcn.00476630
push eax
lea ecx, [ebp - 0x3e0]
call fcn.00445b60
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x1c8]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x2c0]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x2c0]
lea ecx, [ebp - 0x7c]
push eax
call fcn.00476850
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x6b0]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x6b0]
lea ecx, [ebp - 0x7c]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00460cb0
test al, al
je 0x46cda1
nop
lea ecx, [ebp - 0x2c0]
call fcn.00476630
push eax
lea ecx, [ebp - 0x3c8]
call fcn.00445b60
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x2c0]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x4b8]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x4b8]
lea ecx, [ebp - 0x80]
push eax
call fcn.00476850
mov byte [ebp - 4], 0x30
lea eax, [ebp - 0x6f8]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x6f8]
lea ecx, [ebp - 0x80]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x6f8]
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00460cb0
test al, al
je 0x46cd2b
nop
lea ecx, [ebp - 0x1c8]
call fcn.00476630
push eax
lea ecx, [ebp - 0x3b0]
call fcn.00445b60
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1c8]
call fcn.004769b0
mov esi, eax
xorps xmm0, xmm0
lea eax, [ebp - 0xc0]
mov ecx, esi
push eax
movups xmmword [ebp - 0xc0], xmm0
call fcn.0045f7d0
lea eax, [ebp - 0x128]
mov ecx, esi
push eax
movups xmmword [ebp - 0x128], xmm0
call fcn.0045f720
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0xc0]
call fcn.00460cb0
test al, al
je 0x46ccf1
nop
lea ecx, [ebp - 0xc0]
call fcn.004769b0
mov dword [ebp - 0x790], 0x1569951e
mov esi, eax
mov dword [ebp - 0x78c], 0x562886cb
mov ecx, dword [ebp - 0x790]
mov edx, dword [ebp - 0x78c]
mov dword [ebp - 0xa70], ecx
mov dword [ebp - 0xa6c], edx
mov dword [ebp - 0x7d0], 0x7e17c8d8
mov dword [ebp - 0x7cc], 0xd6bd469c
mov eax, dword [ebp - 0x7d0]
mov ecx, dword [ebp - 0x7cc]
mov dword [ebp - 0xa68], eax
mov dword [ebp - 0xa64], ecx
mov dword [ebp - 0x7c8], 0x168fa307
mov dword [ebp - 0x7c4], 0x33326aa4
mov eax, dword [ebp - 0x7c8]
mov ecx, dword [ebp - 0x7c4]
mov dword [ebp - 0xa60], eax
mov dword [ebp - 0xa5c], ecx
mov dword [ebp - 0x7c0], 0xebf9d86
mov dword [ebp - 0x7bc], 0x64a1aed9
mov eax, dword [ebp - 0x7c0]
mov ecx, dword [ebp - 0x7bc]
mov dword [ebp - 0xa58], eax
mov dword [ebp - 0xa54], ecx
mov dword [ebp - 0x888], 0x670afb7b
mov dword [ebp - 0x884], 0x335cf6b2
mov eax, dword [ebp - 0x888]
mov ecx, dword [ebp - 0x884]
mov dword [ebp - 0x878], 0x1f6797bc
mov dword [ebp - 0x874], 0xb9ca35ef
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x878]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x874]
mov dword [ebp - 0x800], 0x168fc775
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x7fc], 0x33326aa4
mov eax, dword [ebp - 0x800]
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x7fc]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x870], 0xebf9d86
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x86c], 0x64a1aed9
mov eax, dword [ebp - 0x870]
mov ecx, dword [ebp - 0x86c]
movaps xmm1, xmmword [ebp - 0xa70]
pxor xmm1, xmmword [ebp - 0x40]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0xa70]
movaps xmmword [ebp - 0xa70], xmm1
movaps xmm1, xmmword [ebp - 0xa60]
mov dword [ebp - 0x24], ecx
mov ecx, esi
pxor xmm1, xmmword [ebp - 0x30]
mov dword [ebp - 0x91c], eax
lea eax, [ebp - 0x91c]
push eax
mov dword [ebp - 0x7b8], esi
movaps xmmword [ebp - 0xa60], xmm1
call fcn.004785c0
test al, al
je 0x46cc87
mov dword [ebp - 0x868], 0x1569951e
sub esp, 0x18
mov dword [ebp - 0x864], 0x562886cb
mov edx, esp
mov eax, dword [ebp - 0x868]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x864]
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0xa20], eax
mov dword [ebp - 0x828], 0x7e17c8d8
mov dword [ebp - 0x824], 0xd6bd469c
mov eax, dword [ebp - 0x828]
mov ecx, dword [ebp - 0x824]
mov dword [ebp - 0xa14], ecx
mov dword [ebp - 0xa18], eax
mov dword [ebp - 0x860], 0x168fa307
mov dword [ebp - 0x85c], 0x33326aa4
mov eax, dword [ebp - 0x860]
mov ecx, dword [ebp - 0x85c]
mov dword [ebp - 0xa0c], ecx
mov dword [ebp - 0xa10], eax
mov dword [ebp - 0x858], 0xebf9d86
mov dword [ebp - 0x854], 0x64a1aed9
mov eax, dword [ebp - 0x858]
mov ecx, dword [ebp - 0x854]
mov dword [ebp - 0xa04], ecx
mov dword [ebp - 0xa08], eax
mov dword [ebp - 0x808], 0x670afb7b
mov dword [ebp - 0x804], 0x335cf6b2
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 0x804]
mov dword [ebp - 0x810], 0x1f6797bc
mov dword [ebp - 0x80c], 0xb9ca35ef
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x810]
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x80c]
mov dword [ebp - 0x850], 0x168fc775
mov dword [ebp - 0x84c], 0x33326aa4
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x850]
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x84c]
mov dword [ebp - 0x848], 0xebf9d86
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x844], 0x64a1aed9
mov eax, dword [ebp - 0x848]
mov ecx, dword [ebp - 0x844]
movaps xmm1, xmmword [ebp - 0xa20]
pxor xmm1, xmmword [ebp - 0x60]
movaps xmmword [ebp - 0xa20], xmm1
movaps xmm1, xmmword [ebp - 0xa10]
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0xa20]
mov dword [ebp - 0x48], eax
lea edi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x50]
movups xmmword [edx], xmm0
mov dword [ebp - 0x794], esp
movaps xmmword [ebp - 0xa10], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46c880
sub ecx, edi
lea eax, [ebp - 0xa20]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x33
mov byte [ebp - 4], 0x32
mov ecx, esi
call fcn.00444940
lea ecx, [ebp - 0xad0]
push ecx
mov ecx, eax
call fcn.0045a150
mov byte [ebp - 4], 0x34
mov edx, eax
lea ecx, [ebp - 0x398]
call fcn.00448fe0
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xad0]
call fcn.00446fc0
lea edx, [ebp - 0x398]
lea ecx, [ebp - 0xec]
call fcn.004639f0
mov byte [ebp - 4], 0x37
cmp byte [ebp - 0xd4], 0
je 0x46cc60
mov byte [ebp - 4], 0x38
lea edx, [ebp - 0xec]
cmp dword [ebp - 0xd8], 0x10
lea ecx, [ebp - 0xa88]
push dword [ebp - 0xdc]
cmovae edx, dword [ebp - 0xec]
call fcn.00448220
or dword [ebp - 0x7b4], 0x10
lea eax, [ebp - 0xa88]
add esp, 4
lea ecx, [ebp - 0x900]
push eax
call fcn.004486f0
mov byte [ebp - 4], 0x39
sub esp, 0x18
mov dword [ebp - 0x840], 0x14799a0b
mov edx, esp
mov dword [ebp - 0x83c], 0x572e99c5
xorps xmm0, xmm0
mov eax, dword [ebp - 0x840]
mov ecx, dword [ebp - 0x83c]
mov dword [ebp - 0x94c], ecx
mov dword [ebp - 0x950], eax
mov dword [ebp - 0x838], 0x1f6797bc
mov dword [ebp - 0x834], 0xb9ca35ef
mov eax, dword [ebp - 0x838]
mov ecx, dword [ebp - 0x834]
mov dword [ebp - 0x944], ecx
mov dword [ebp - 0x948], eax
mov dword [ebp - 0x830], 0x670afb7b
mov dword [ebp - 0x82c], 0x335cf6b2
mov eax, dword [ebp - 0x830]
mov ecx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0x1f6797bc
mov dword [ebp - 0x8f0], eax
mov dword [ebp - 0x8ec], ecx
mov dword [ebp - 0x814], 0xb9ca35ef
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movaps xmm1, xmmword [ebp - 0x950]
mov dword [ebp - 0x8e4], ecx
lea ecx, [ebp - 0x950]
mov dword [ebp - 0x8e8], eax
lea edi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x8f0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x8c4], esp
movaps xmmword [ebp - 0x950], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46ca30
sub ecx, edi
lea eax, [ebp - 0x950]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x3a
mov byte [ebp - 4], 0x39
mov ecx, esi
call fcn.00444940
mov edi, eax
mov byte [ebp - 4], 0x3b
mov dl, byte [edi]
mov cl, byte [ebp - 0x900]
mov byte [edi], cl
mov eax, dword [ebp - 0x8f8]
mov ecx, dword [ebp - 0x8f4]
mov byte [ebp - 0x900], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x8f8], edx
mov dword [ebp - 0x8f4], esi
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x8f8]
push dword [ebp - 0x900]
call fcn.00446660
and dword [ebp - 0x7b4], 0xffffffef
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0xa88]
call fcn.00446fc0
mov dword [ebp - 0x820], 0xe6d9417
sub esp, 0x18
mov dword [ebp - 0x81c], 0x335c85dc
mov edx, esp
mov eax, dword [ebp - 0x820]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x81c]
mov dword [ebp - 0x9cc], ecx
mov dword [ebp - 0x9d0], eax
mov dword [ebp - 0x8a8], 0x1f6797bc
mov dword [ebp - 0x8a4], 0xb9ca35ef
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0x8a4]
mov dword [ebp - 0x9c4], ecx
mov dword [ebp - 0x9c8], eax
mov dword [ebp - 0x898], 0x670afb7b
mov dword [ebp - 0x894], 0x335cf6b2
mov eax, dword [ebp - 0x898]
mov ecx, dword [ebp - 0x894]
mov dword [ebp - 0x7a8], 0x1f6797bc
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x7ec], ecx
mov dword [ebp - 0x7a4], 0xb9ca35ef
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
movaps xmm1, xmmword [ebp - 0x9d0]
mov dword [ebp - 0x7e4], ecx
lea ecx, [ebp - 0x9d0]
mov dword [ebp - 0x7e8], eax
lea esi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x7f0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x8c0], esp
movaps xmmword [ebp - 0x9d0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46cbb0
sub ecx, esi
lea eax, [ebp - 0x9d0]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x3c
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x7f4]
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x3e0]
mov dword [ebp - 0x8bc], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x3d
mov byte [ebp - 4], 0x37
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x3c8]
mov dword [ebp - 0x8b8], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x3e
mov byte [ebp - 4], 0x37
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x3b0]
mov dword [ebp - 0x8b4], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x3f
mov byte [ebp - 4], 0x37
mov ecx, esi
call fcn.00444940
push dword [ebp - 0x7b8]
mov ecx, eax
call fcn.00444760
mov byte [ebp - 4], 0x36
cmp byte [ebp - 0xd4], 0
je 0x46cc78
lea ecx, [ebp - 0xec]
call fcn.00446fc0
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x398]
call fcn.00446fc0
mov eax, dword [ebp - 0xc0]
movzx eax, byte [eax]
cmp eax, 9
ja case.0x46cc9c.0
movzx eax, byte [eax + 0x46daa0]
jmp dword [eax*4 + 0x46da94]
mov eax, dword [ebp - 0xbc]
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], eax
call fcn.00447410
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xbc], eax
jmp 0x46ccd7
add dword [ebp - 0xb8], 0x10
jmp 0x46ccd7
inc dword [ebp - 0xb4]
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0xc0]
call fcn.00460cb0
test al, al
jne 0x46c540
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x3b0]
call fcn.00446fc0
lea ecx, [ebp - 0x4b8]
call fcn.0045f540
inc dword [ebp - 0x4a8]
lea eax, [ebp - 0x6f8]
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00460cb0
test al, al
jne 0x46c4d0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x6c8]
call fcn.00446fc0
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x6e0]
call fcn.00446fc0
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x488]
call fcn.00446fc0
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x4a0]
call fcn.00446fc0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x3c8]
call fcn.00446fc0
lea ecx, [ebp - 0x2c0]
call fcn.0045f540
inc dword [ebp - 0x2b0]
lea eax, [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00460cb0
test al, al
jne 0x46c440
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x680]
call fcn.00446fc0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x698]
call fcn.00446fc0
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x290]
call fcn.00446fc0
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x2a8]
call fcn.00446fc0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x3e0]
call fcn.00446fc0
lea ecx, [ebp - 0x1c8]
call fcn.0045f540
inc dword [ebp - 0x1b8]
lea eax, [ebp - 0x620]
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00460cb0
test al, al
jne 0x46c3b0
mov edi, dword [ebp - 0x7d4]
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x5f0]
call fcn.00446fc0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x608]
call fcn.00446fc0
mov dword [ebp - 4], 0x50
lea ecx, [ebp - 0x198]
call fcn.00446fc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00446fc0
mov dword [ebp - 0x7a8], 0x3789a18
mov dword [ebp - 0x7a4], 0x335cf6c1
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0xa40], eax
mov dword [ebp - 0xa3c], ecx
mov dword [ebp - 0x7a8], 0x1f6797bc
mov dword [ebp - 0x7a4], 0xb9ca35ef
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0x7a8], 0x670afb7b
mov dword [ebp - 0x7a4], 0x335cf6b2
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x7a8], 0x1f6797bc
mov dword [ebp - 0x7a4], 0xb9ca35ef
mov eax, dword [ebp - 0x7a8]
mov dword [ebp - 0x7e8], eax
lea eax, [ebp - 0xa40]
mov dword [ebp - 0x7ec], ecx
mov ecx, dword [ebp - 0x7a4]
movaps xmm1, xmmword [ebp - 0xa40]
mov dword [ebp - 0x7e4], ecx
mov ecx, edi
pxor xmm1, xmmword [ebp - 0x7f0]
mov dword [ebp - 0x920], eax
lea eax, [ebp - 0x920]
push eax
movaps xmmword [ebp - 0xa40], xmm1
call fcn.004785c0
test al, al
je 0x46da5b
mov dword [ebp - 0x7a8], 0x3789a18
lea edx, [ebp - 0x980]
mov dword [ebp - 0x7a4], 0x335cf6c1
lea esi, [edx + 1]
mov eax, dword [ebp - 0x7a8]
sub esp, 0x18
mov ecx, dword [ebp - 0x7a4]
xorps xmm0, xmm0
mov dword [ebp - 0x97c], ecx
mov dword [ebp - 0x980], eax
mov dword [ebp - 0x7a8], 0x1f6797bc
mov dword [ebp - 0x7a4], 0xb9ca35ef
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x974], ecx
mov dword [ebp - 0x978], eax
mov dword [ebp - 0x7a8], 0x670afb7b
mov dword [ebp - 0x7a4], 0x335cf6b2
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x7a8], 0x1f6797bc
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x7ec], ecx
mov dword [ebp - 0x7a4], 0xb9ca35ef
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
movaps xmm1, xmmword [ebp - 0x980]
mov dword [ebp - 0x7e4], ecx
mov ecx, esp
mov dword [ebp - 0x7e8], eax
pxor xmm1, xmmword [ebp - 0x7f0]
movaps xmmword [ebp - 0x980], xmm1
movups xmmword [ecx], xmm0
mov dword [ebp - 0x794], esp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
mov al, byte [edx]
inc edx
test al, al
jne 0x46d035
sub edx, esi
lea eax, [ebp - 0x980]
push edx
push eax
call fcn.00438600
mov dword [ebp - 4], 0x52
mov dword [ebp - 4], 0xffffffff
mov ecx, edi
call fcn.00444940
push 0x48
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x180]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x180]
lea ecx, [ebp - 0x88]
push eax
call fcn.00476850
mov dword [ebp - 4], 0x53
lea eax, [ebp - 0x668]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x668]
lea ecx, [ebp - 0x88]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x54
lea eax, [ebp - 0x668]
push eax
lea ecx, [ebp - 0x180]
call fcn.00460cb0
test al, al
je 0x46da19
lea ecx, [ebp - 0x180]
call fcn.00476630
push eax
lea ecx, [ebp - 0x428]
call fcn.00445b60
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x180]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0x278]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x278]
lea ecx, [ebp - 0x8c]
push eax
call fcn.00476850
mov byte [ebp - 4], 0x56
lea eax, [ebp - 0x788]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x788]
lea ecx, [ebp - 0x8c]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0x788]
push eax
lea ecx, [ebp - 0x278]
call fcn.00460cb0
test al, al
je 0x46d9a3
nop dword [eax]
lea ecx, [ebp - 0x278]
call fcn.00476630
push eax
lea ecx, [ebp - 0x410]
call fcn.00445b60
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x278]
call fcn.004769b0
push 0x48
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x500]
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x500]
lea ecx, [ebp - 0x90]
push eax
call fcn.00476850
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x5d8]
push 0x48
push 0
push eax
call fcn.00499a10
add esp, 0xc
lea eax, [ebp - 0x5d8]
lea ecx, [ebp - 0x90]
push eax
call fcn.00476790
mov byte [ebp - 4], 0x5a
lea eax, [ebp - 0x5d8]
push eax
lea ecx, [ebp - 0x500]
call fcn.00460cb0
test al, al
je 0x46d92d
nop dword [eax + eax]
lea ecx, [ebp - 0x180]
call fcn.00476630
push eax
lea ecx, [ebp - 0x320]
call fcn.00445b60
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x180]
call fcn.004769b0
mov esi, eax
xorps xmm0, xmm0
lea eax, [ebp - 0xd0]
mov ecx, esi
push eax
movups xmmword [ebp - 0xd0], xmm0
call fcn.0045f7d0
lea eax, [ebp - 0x118]
mov ecx, esi
push eax
movups xmmword [ebp - 0x118], xmm0
call fcn.0045f720
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0xd0]
call fcn.00460cb0
test al, al
je 0x46d8f3
nop
lea ecx, [ebp - 0xd0]
call fcn.004769b0
mov dword [ebp - 0x7a8], 0x1569951e
mov edi, eax
mov dword [ebp - 0x7a4], 0x562886cb
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x7a4]
mov dword [ebp - 0xa50], ecx
mov dword [ebp - 0xa4c], edx
mov dword [ebp - 0x898], 0x7212d9d8
mov dword [ebp - 0x894], 0xb9b8508d
mov eax, dword [ebp - 0x898]
mov ecx, dword [ebp - 0x894]
mov dword [ebp - 0xa48], eax
mov dword [ebp - 0xa44], ecx
mov dword [ebp - 0x8a8], 0x670afb7b
mov dword [ebp - 0x8a4], 0x335cf6b2
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0x8a4]
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x820], 0x1f6797bc
mov dword [ebp - 0x81c], 0xb9ca35ef
mov eax, dword [ebp - 0x820]
mov dword [ebp - 0x7e8], eax
lea eax, [ebp - 0xa50]
mov dword [ebp - 0x7ec], ecx
mov ecx, dword [ebp - 0x81c]
movaps xmm1, xmmword [ebp - 0xa50]
mov dword [ebp - 0x7e4], ecx
mov ecx, edi
pxor xmm1, xmmword [ebp - 0x7f0]
mov dword [ebp - 0x934], eax
lea eax, [ebp - 0x934]
push eax
movaps xmmword [ebp - 0xa50], xmm1
call fcn.004785c0
test al, al
je 0x46d889
mov dword [ebp - 0x818], 0x1569951e
sub esp, 0x18
mov dword [ebp - 0x814], 0x562886cb
mov edx, esp
mov eax, dword [ebp - 0x818]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x814]
mov dword [ebp - 0x9a0], eax
mov dword [ebp - 0x99c], ecx
mov dword [ebp - 0x830], 0x7212d9d8
mov dword [ebp - 0x82c], 0xb9b8508d
mov eax, dword [ebp - 0x830]
mov ecx, dword [ebp - 0x82c]
mov dword [ebp - 0x998], eax
mov dword [ebp - 0x994], ecx
mov dword [ebp - 0x838], 0x670afb7b
mov dword [ebp - 0x834], 0x335cf6b2
mov eax, dword [ebp - 0x838]
mov ecx, dword [ebp - 0x834]
mov dword [ebp - 0x840], 0x1f6797bc
mov dword [ebp - 0x8f0], eax
mov dword [ebp - 0x83c], 0xb9ca35ef
mov eax, dword [ebp - 0x840]
mov dword [ebp - 0x8ec], ecx
mov ecx, dword [ebp - 0x83c]
movaps xmm1, xmmword [ebp - 0x9a0]
mov dword [ebp - 0x8e8], eax
lea eax, [ebp - 0x9a0]
mov dword [ebp - 0x8e4], ecx
lea esi, [eax + 1]
pxor xmm1, xmmword [ebp - 0x8f0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x794], esp
movaps xmmword [ebp - 0x9a0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x46d463
sub eax, esi
mov ecx, edx
push eax
lea eax, [ebp - 0x9a0]
push eax
call fcn.00438600
mov byte [ebp - 4], 0x5c
mov byte [ebp - 4], 0x5b
mov ecx, edi
call fcn.00444940
lea ecx, [ebp - 0xab8]
push ecx
mov ecx, eax
call fcn.0045a150
mov byte [ebp - 4], 0x5d
mov edx, eax
lea ecx, [ebp - 0x3f8]
call fcn.00448fe0
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0xab8]
call fcn.00446fc0
lea edx, [ebp - 0x3f8]
lea ecx, [ebp - 0x22c]
call fcn.004639f0
mov byte [ebp - 4], 0x60
cmp byte [ebp - 0x214], 0
je 0x46d862
mov byte [ebp - 0x8d8], 0
lea ecx, [ebp - 0x8d0]
push dword [ebp - 0x8d8]
xorps xmm0, xmm0
movq qword [ebp - 0x8d0], xmm0
call fcn.00446660
xorps xmm0, xmm0
mov byte [ebp - 0x8d8], 3
push 0x18
movlpd qword [ebp - 0xa0], xmm0
call fcn.00497fb9
mov esi, eax
add esp, 4
lea eax, [ebp - 0x61]
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0xa0], eax
mov byte [ebp - 4], 0x61
lea eax, [ebp - 0x22c]
push eax
mov ecx, esi
call fcn.00445b60
mov dword [ebp - 0x9c], 0
mov byte [ebp - 4], 0x60
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x8d0], esi
mov dword [ebp - 0x8cc], eax
mov byte [ebp - 4], 0x62
sub esp, 0x18
mov dword [ebp - 0x848], 0x5678e15
mov edx, esp
mov dword [ebp - 0x844], 0x335c84d7
xorps xmm0, xmm0
mov eax, dword [ebp - 0x848]
mov ecx, dword [ebp - 0x844]
mov dword [ebp - 0x9b0], eax
mov dword [ebp - 0x9ac], ecx
mov dword [ebp - 0x850], 0x1f6797bc
mov dword [ebp - 0x84c], 0xb9ca35ef
mov eax, dword [ebp - 0x850]
mov ecx, dword [ebp - 0x84c]
mov dword [ebp - 0x9a8], eax
mov dword [ebp - 0x9a4], ecx
mov dword [ebp - 0x810], 0x670afb7b
mov dword [ebp - 0x80c], 0x335cf6b2
mov eax, dword [ebp - 0x810]
mov ecx, dword [ebp - 0x80c]
mov dword [ebp - 0x808], 0x1f6797bc
mov dword [ebp - 0x890], eax
mov dword [ebp - 0x88c], ecx
mov dword [ebp - 0x804], 0xb9ca35ef
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 0x804]
movaps xmm1, xmmword [ebp - 0x9b0]
mov dword [ebp - 0x884], ecx
lea ecx, [ebp - 0x9b0]
mov dword [ebp - 0x888], eax
lea eax, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x890]
movups xmmword [edx], xmm0
mov dword [ebp - 0x8c4], esp
movaps xmmword [ebp - 0x9b0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov dword [ebp - 0x7b8], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46d654
sub ecx, dword [ebp - 0x7b8]
lea eax, [ebp - 0x9b0]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x63
mov byte [ebp - 4], 0x62
mov ecx, edi
call fcn.00444940
mov edx, eax
mov byte [ebp - 4], 0x64
mov cl, byte [edx]
mov byte [edx], 3
mov eax, dword [edx + 8]
mov byte [ebp - 0x8d8], cl
mov dword [edx + 8], esi
mov esi, dword [ebp - 0x9c]
mov byte [ebp - 0x7d4], cl
mov ecx, dword [edx + 0xc]
mov dword [edx + 0xc], esi
mov dword [ebp - 0x8d0], eax
mov dword [ebp - 0x8cc], ecx
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x8d0]
push dword [ebp - 0x7d4]
call fcn.00446660
mov dword [ebp - 0x790], 0x3789a18
sub esp, 0x18
mov dword [ebp - 0x78c], 0x335cf6c1
mov edx, esp
mov eax, dword [ebp - 0x790]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x78c]
mov dword [ebp - 0x9bc], ecx
mov dword [ebp - 0x9c0], eax
mov dword [ebp - 0x7d0], 0x1f6797bc
mov dword [ebp - 0x7cc], 0xb9ca35ef
mov eax, dword [ebp - 0x7d0]
mov ecx, dword [ebp - 0x7cc]
mov dword [ebp - 0x9b4], ecx
mov dword [ebp - 0x9b8], eax
mov dword [ebp - 0x7c8], 0x670afb7b
mov dword [ebp - 0x7c4], 0x335cf6b2
mov eax, dword [ebp - 0x7c8]
mov ecx, dword [ebp - 0x7c4]
mov dword [ebp - 0x7c0], 0x1f6797bc
mov dword [ebp - 0x880], eax
mov dword [ebp - 0x87c], ecx
mov dword [ebp - 0x7bc], 0xb9ca35ef
mov eax, dword [ebp - 0x7c0]
mov ecx, dword [ebp - 0x7bc]
movaps xmm1, xmmword [ebp - 0x9c0]
mov dword [ebp - 0x874], ecx
lea ecx, [ebp - 0x9c0]
mov dword [ebp - 0x878], eax
lea esi, [ecx + 1]
pxor xmm1, xmmword [ebp - 0x880]
movups xmmword [edx], xmm0
mov dword [ebp - 0x8c0], esp
movaps xmmword [ebp - 0x9c0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46d7b7
sub ecx, esi
lea eax, [ebp - 0x9c0]
push ecx
push eax
mov ecx, edx
call fcn.00438600
mov byte [ebp - 4], 0x65
mov byte [ebp - 4], 0x60
mov ecx, dword [ebp - 0x7f4]
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x428]
mov dword [ebp - 0x8bc], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x66
mov byte [ebp - 4], 0x60
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x410]
mov dword [ebp - 0x8b8], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x67
mov byte [ebp - 4], 0x60
mov ecx, esi
call fcn.00444940
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x320]
mov dword [ebp - 0x8b4], esp
mov ecx, esp
push eax
call fcn.00445b60
mov byte [ebp - 4], 0x68
mov byte [ebp - 4], 0x60
mov ecx, esi
call fcn.00444940
push edi
mov ecx, eax
call fcn.00444760
mov byte [ebp - 4], 0x5f
cmp byte [ebp - 0x214], 0
je 0x46d87a
lea ecx, [ebp - 0x22c]
call fcn.00446fc0
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x3f8]
call fcn.00446fc0
mov eax, dword [ebp - 0xd0]
movzx eax, byte [eax]
cmp eax, 9
ja case.0x46d89e.0
movzx eax, byte [eax + 0x46dab8]
jmp dword [eax*4 + 0x46daac]
mov eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x94], eax
call fcn.00447410
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0xcc], eax
jmp 0x46d8d9
add dword [ebp - 0xc8], 0x10
jmp 0x46d8d9
inc dword [ebp - 0xc4]
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0xd0]
call fcn.00460cb0
test al, al
jne 0x46d280
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x320]
call fcn.00446fc0
lea ecx, [ebp - 0x500]
call fcn.0045f540
inc dword [ebp - 0x4f0]
lea eax, [ebp - 0x5d8]
push eax
lea ecx, [ebp - 0x500]
call fcn.00460cb0
test al, al
jne 0x46d210
mov byte [ebp - 4], 0x6f
lea ecx, [ebp - 0x5a8]
call fcn.00446fc0
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0x5c0]
call fcn.00446fc0
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x4d0]
call fcn.00446fc0
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x4e8]
call fcn.00446fc0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x410]
call fcn.00446fc0
lea ecx, [ebp - 0x278]
call fcn.0045f540
inc dword [ebp - 0x268]
lea eax, [ebp - 0x788]
push eax
lea ecx, [ebp - 0x278]
call fcn.00460cb0
test al, al
jne 0x46d170
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x758]
call fcn.00446fc0
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x770]
call fcn.00446fc0
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x248]
call fcn.00446fc0
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x260]
call fcn.00446fc0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x428]
call fcn.00446fc0
lea ecx, [ebp - 0x180]
call fcn.0045f540
inc dword [ebp - 0x170]
lea eax, [ebp - 0x668]
push eax
lea ecx, [ebp - 0x180]
call fcn.00460cb0
test al, al
jne 0x46d0d5
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x638]
call fcn.00446fc0
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x650]
call fcn.00446fc0
mov dword [ebp - 4], 0x79
lea ecx, [ebp - 0x150]
call fcn.00446fc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x168]
call fcn.00446fc0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00497d9d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret