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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x838
mov ebp, dword [esp + 0x850]
lea eax, [0x63146d4]
lea ecx, [esp + 0x388]
mov dword [ecx], eax
mov eax, dword [ecx]
mov dword [ecx], 0x2e024b5b
lea edi, [esp + 0x388]
push dword [edi]
push eax
call fcn.062a3fc8
pop ecx
pop edx
and dword [edi], 0
xor edx, edx
mov bl, 1
push 4
pop ecx
test bl, 1
je 0x62a7163
movzx esi, byte [edx + 0x63150c8]
or esi, 0x1a7e8500
xor esi, dword [eax + edx]
mov dword [esp + edx + 0x388], esi
xor ebx, ebx
mov edx, ecx
jmp 0x62a7141
movzx ecx, byte [eax + 6]
movzx eax, word [eax + 4]
xor eax, 0x5ca2
mov word [esp + 0x38c], ax
xor cl, 6
mov byte [esp + 0x38e], cl
mov eax, dword [esp + 0x388]
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x38b]
mov dword [ecx + 3], eax
lea esi, [esp + 0x5dc]
push 7
push ecx
push esi
call fcn.062dc4c0
add esp, 0xc
mov eax, dword [esi]
cmp eax, 0x80000001
jne 0x62a721f
mov eax, dword [esp + 0x5e8]
lea ecx, [esp + 0x110]
mov dword [ecx + 8], eax
movsd xmm0, qword [esp + 0x5e0]
movsd qword [esp + 0x4c], xmm0
mov dword [esp + 0x54], eax
lea eax, [0x63082f4]
mov dword [ecx], eax
mov eax, dword [ecx]
mov dword [ecx], 0x61c623aa
lea ebx, [esp + 0x110]
push dword [ebx]
push eax
call fcn.062a3ff3
pop ecx
pop edx
xorps xmm0, xmm0
movsd qword [ebx], xmm0
and dword [ebx + 8], 0
xor ecx, ecx
cmp ecx, 0xb
ja 0x62a7270
mov edx, dword [ecx + 0x63150cf]
xor edx, dword [eax + ecx]
mov dword [esp + ecx + 0x110], edx
add ecx, 4
jmp 0x62a7205
mov ecx, dword [esp + 0x5e8]
mov dword [esp + 0x118], ecx
movsd xmm0, qword [esp + 0x5e0]
movsd qword [esp + 0x110], xmm0
lea edx, [esp + 0x378]
mov dword [edx], eax
movsd qword [edx + 4], xmm0
mov dword [edx + 0xc], ecx
push edx
call fcn.0629fc33
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x63141bc
mov dword [esp + 0x10], 0x80000000
jmp 0x62a7c4e
mov eax, dword [esp + 0x118]
mov dword [esp + 0x390], eax
movsd xmm0, qword [esp + 0x110]
movsd qword [esp + 0x388], xmm0
push 0xc
push edi
push esi
call fcn.062dc4c0
add esp, 0xc
mov eax, dword [esp + 0x5dc]
cmp eax, 0x80000001
jne 0x62a7311
lea eax, [esp + 0x5dc]
mov ecx, dword [eax + 0xc]
mov dword [esp + 8], ecx
movsd xmm0, qword [eax + 4]
movsd qword [esp + 0x78], xmm0
mov dword [esp + 0x80], ecx
lea ecx, [0x6307f82]
mov dword [eax], ecx
mov ecx, dword [eax]
mov dword [eax], 0xc532a6bd
lea esi, [esp + 0x5dc]
push dword [esi]
push ecx
call fcn.062a43a5
pop ecx
pop edx
xorps xmm0, xmm0
movups xmmword [esi], xmm0
and dword [esi + 0x10], 0
xor ecx, ecx
cmp ecx, 0x13
ja 0x62a735b
mov edx, dword [ecx + 0x63150db]
xor edx, dword [eax + ecx]
mov dword [esp + ecx + 0x5dc], edx
add ecx, 4
jmp 0x62a72f7
mov ecx, dword [esp + 0x5e8]
mov dword [esp + 8], ecx
movsd xmm0, qword [esp + 0x5e0]
movsd qword [esp], xmm0
lea edx, [esp + 0x94]
mov dword [edx], eax
movsd qword [edx + 4], xmm0
mov dword [edx + 0xc], ecx
push edx
call fcn.0629fc33
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x63141bc
mov dword [esp + 0x10], 0x80000000
jmp 0x62a7c43
mov al, byte [eax + 0x14]
xor al, 0x50
mov byte [esp + 0x5f0], al
movups xmm0, xmmword [esp + 0x5dc]
movups xmmword [esp + 0x110], xmm0
movsd xmm0, qword [esp + 0x5e9]
movsd qword [esp + 0x11d], xmm0
push 0x15
pop esi
push 0
push esi
call fcn.062b1109
pop ecx
pop ecx
movups xmm0, xmmword [esp + 0x110]
movups xmmword [edx], xmm0
movsd xmm0, qword [esp + 0x11d]
movsd qword [edx + 0xd], xmm0
mov dword [esp + 0x58], eax
and dword [esp + 0x64], 0
mov dword [esp + 0x68], 4
and dword [esp + 0x6c], 0
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], esi
push 4
pop esi
mov eax, dword [esp + 0x84c]
cmp byte [eax], 4
mov ecx, 0
mov eax, esi
jne 0x62a7584
mov eax, dword [esp + 0x84c]
mov ebp, dword [eax + 8]
imul edi, dword [eax + 0xc], 0x18
test edi, edi
je 0x62a756e
push 1
push 0x63150f0
push ebp
call fcn.062936d8
add esp, 0xc
test eax, eax
je 0x62a7563
push eax
call fcn.062d7d60
pop ecx
test eax, eax
je 0x62a7563
mov dword [esp + 0x388], eax
mov dword [esp + 0x38c], edx
lea eax, [esp + 0x4c]
mov dword [esp + 0x5dc], eax
mov eax, 0x6284db0
mov dword [esp + 0x5e0], eax
mov ecx, 0x6284db0
lea ebx, [esp + 0x388]
mov dword [esp + 0x5e4], ebx
mov eax, 0x62b0320
mov dword [esp + 0x5e8], eax
mov eax, 0x63150f4
mov dword [esp + 0x110], eax
push 3
pop ebx
mov dword [esp + 0x114], ebx
and dword [esp + 0x120], 0
lea eax, [esp + 0x58]
mov dword [esp + 0x5ec], eax
mov dword [esp + 0x5f0], ecx
lea eax, [esp + 0x5dc]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ebx
lea ebx, [esp + 0x36c]
mov ecx, ebx
lea edx, [esp + 0x110]
call fcn.062a24c8
lea ecx, [esp + 0x64]
mov edx, ebx
call fcn.062a25a5
lea eax, [esp + 0x78]
mov dword [esp + 0x5dc], eax
mov eax, 0x6284db0
mov dword [esp + 0x5e0], eax
lea ecx, [esp + 0x388]
mov dword [esp + 0x5e4], ecx
mov ecx, 0x62b0320
mov dword [esp + 0x5e8], ecx
mov ecx, 0x63150f4
mov dword [esp + 0x110], ecx
push 3
pop ecx
mov dword [esp + 0x114], ecx
and dword [esp + 0x120], 0
lea edx, [esp + 0x58]
mov dword [esp + 0x5ec], edx
mov dword [esp + 0x5f0], eax
lea eax, [esp + 0x5dc]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ecx
lea ebx, [esp + 0xf4]
mov ecx, ebx
lea edx, [esp + 0x110]
call fcn.062a24c8
lea ecx, [esp + 0x64]
mov edx, ebx
call fcn.062a25a5
add ebp, 0x18
add edi, 0xffffffe8
jmp 0x62a73f5
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x850]
lea edi, [esp + 0x388]
lea edx, [esp + 0x20]
and dword [edx], 0
mov dword [edx + 4], 4
and dword [edx + 8], 0
imul ecx, ecx, 0xc
add ecx, eax
mov dword [esp + 0x90], ecx
cmp eax, dword [esp + 0x90]
je 0x62a7912
lea ebx, [eax + 0xc]
push dword [eax + 8]
push dword [eax + 4]
lea edi, [esp + 0x108]
push edi
call fcn.062eaf10
add esp, 0xc
mov ecx, dword [esp + 0x104]
mov edx, dword [esp + 0x108]
call fcn.062a11d5
test al, al
je 0x62a78d2
mov dword [esp + 0x1c], ebx
push edi
lea eax, [esp + 0x114]
push eax
call fcn.062a1090
pop eax
pop ecx
mov ebx, dword [esp + 0x110]
mov edi, dword [esp + 0x114]
mov ebp, dword [esp + 0x118]
cmp ebx, 2
je 0x62a87f4
push 0x250
lea eax, [esp + 0x120]
push eax
lea eax, [esp + 0x5f0]
push eax
call fcn.062ff480
add esp, 0xc
mov dword [esp + 0x5dc], ebx
mov dword [esp + 0x5e4], ebp
mov dword [esp + 0x5e0], edi
lea edi, [esp + 0x388]
mov ebx, dword [esp + 0x1c]
lea eax, [esp + 0x5dc]
push eax
lea eax, [esp + 0x114]
push eax
call fcn.062dcf20
pop eax
pop ecx
cmp dword [esp + 0x110], 0
je 0x62a78f2
mov ebp, dword [esp + 0x114]
mov edi, dword [esp + 0x118]
mov ebx, dword [esp + 0x11c]
test ebp, ebp
je 0x62a7b7b
push 0x248
lea eax, [esp + 0x124]
push eax
lea eax, [esp + 0x39c]
push eax
call fcn.062ff480
add esp, 0xc
mov dword [esp + 0x388], ebp
mov dword [esp + 0x390], ebx
mov dword [esp + 0x38c], edi
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x388]
call fcn.062e6bb0
push dword [esp + 0x44]
push dword [esp + 0x44]
lea ebx, [esp + 8]
push ebx
call fcn.062b9bf0
add esp, 0xc
mov eax, dword [esp]
mov dword [esp + 0x38], eax
mov ebp, dword [esp + 4]
mov edi, dword [esp + 8]
lea eax, [0x631352d]
mov dword [esp], eax
mov eax, dword [esp]
mov dword [esp], 0x4614b194
push dword [esp]
push eax
call fcn.062a42b3
pop ecx
pop edx
and dword [esp], 0
xor ecx, ecx
mov dl, 1
test dl, 1
je 0x62a773e
movzx edx, byte [ecx + 0x631510c]
or edx, 0x96f0de00
xor edx, dword [eax + ecx]
mov dword [esp + ecx], edx
xor edx, edx
mov ecx, esi
jmp 0x62a7720
cmp dword [esp + 0x38], 0
mov eax, 0x6314664
cmovne ebp, eax
mov eax, 0
cmovne edi, eax
push 4
lea ebx, [esp + 4]
push ebx
push edi
push ebp
call fcn.0629472a
add esp, 0x10
test al, al
jne 0x62a77ce
lea eax, [0x630c61c]
mov dword [esp], eax
mov eax, dword [esp]
mov dword [esp], 0xddc6c436
push dword [esp]
push eax
call fcn.062a473e
pop ecx
pop edx
and dword [esp], 0
xor ecx, ecx
mov dl, 1
test dl, 1
je 0x62a77ac
movzx edx, byte [ecx + 0x6315110]
or edx, 0x5d00a000
xor edx, dword [eax + ecx]
mov dword [esp + ecx], edx
xor edx, edx
mov ecx, esi
jmp 0x62a778e
mov eax, dword [esp]
mov dword [esp + 0x10], eax
push 4
lea eax, [esp + 0x14]
push eax
push edi
push ebp
call fcn.0629472a
add esp, 0x10
test al, al
mov ebx, esp
je 0x62a78b4
lea eax, [esp + 0x388]
push eax
push ebx
call fcn.062dcfb0
pop eax
pop ecx
push ebx
lea eax, [esp + 0x14]
push eax
call fcn.062a0eb2
pop eax
pop ecx
cmp byte [esp + 0x10], 4
jne 0x62a77ff
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x850]
jmp 0x62a7817
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
cmp bl, 4
mov ebp, dword [esp + 0x850]
jne 0x62a7bcd
mov dword [esp + 0x2c], edi
and dword [esp + 0x10], 0
mov dword [esp + 0x14], 1
and dword [esp + 0x18], 0
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.062dce20
add esp, 0xc
cmp byte [esp + 0x84], 4
je 0x62a7861
mov ebx, dword [esp + 0x84]
cmp bl, 4
jne 0x62a7bb1
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
push dword [esp + 0x2c]
call dword [section..rdata]
cmp ebp, 0x80000000
je 0x62a7ba8
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x20]
jne 0x62a789e
push eax
lea eax, [esp + 0x24]
push eax
call fcn.062c7017
pop eax
pop ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
imul eax, eax, 0xc
mov dword [ecx + eax], ebp
mov dword [ecx + eax + 8], edi
mov dword [ecx + eax + 4], ebx
inc dword [esp + 0x28]
lea eax, [esp + 0x3c]
push eax
call fcn.062b1154
pop eax
lea edi, [esp + 0x388]
mov ecx, edi
call fcn.06283bce
jmp 0x62a764e
mov eax, edi
mov edi, dword [esp + 0x28]
push eax
call fcn.062b1154
pop eax
mov eax, ebx
test edi, edi
lea edi, [esp + 0x388]
je 0x62a75a2
jmp 0x62a7912
lea ecx, [esp + 0x5dc]
call fcn.06283a08
cmp dword [esp + 0x28], 0
mov eax, ebx
mov ebp, dword [esp + 0x850]
je 0x62a75a2
lea eax, [esp + 0x20]
push eax
call fcn.06294eec
pop eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
movsd xmm0, qword [esp + 0x20]
movsd qword [esp + 0x10], xmm0
lea ecx, [esp + 0x64]
call fcn.06283bdd
lea eax, [esp + 0x58]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x78]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x4c]
push eax
call fcn.062b1154
pop eax
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x84c]
call fcn.062940c1
cmp esi, 0x80000000
je 0x62a7c5a
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x62a8830
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
imul ecx, ecx, 0xc
add ecx, eax
mov dword [esp], eax
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xc], ecx
cmp eax, dword [esp + 0x1c]
je 0x62a87e6
lea esi, [eax + 0xc]
mov dword [esp + 4], esi
mov ecx, dword [eax]
cmp ecx, 0x80000000
je 0x62a87e6
mov edx, dword [eax + 4]
mov ebx, dword [eax + 8]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x38], edx
mov dword [esp + 0x98], edx
mov dword [esp + 0x110], 0x6314edc
mov dword [esp + 0x114], 2
and dword [esp + 0x120], 0
mov dword [esp + 0x388], 0x6314ef4
mov dword [esp + 0x38c], 0x62b0320
mov dword [esp + 0x118], edi
mov dword [esp + 0x11c], 1
lea ecx, [esp + 0x3c]
lea edi, [esp + 0x110]
mov edx, edi
call fcn.062a24c8
lea eax, [0x6310aee]
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 0x110], 0xe9151d50
push dword [esp + 0x110]
push eax
call fcn.062a400f
pop ecx
pop edx
xorps xmm0, xmm0
movups xmmword [esp + 0x110], xmm0
and dword [esp + 0x120], 0
xor ecx, ecx
cmp ecx, 0x13
ja 0x62a7a96
mov edx, dword [ecx + 0x6315114]
xor edx, dword [eax + ecx]
mov dword [esp + ecx + 0x110], edx
add ecx, 4
jmp 0x62a7a7c
mov al, byte [eax + 0x14]
not al
mov byte [esp + 0x124], al
movups xmm0, xmmword [esp + 0x110]
movups xmmword [esp + 0x388], xmm0
movsd xmm0, qword [esp + 0x11d]
movsd qword [esp + 0x395], xmm0
push 0
push 0x15
pop eax
push eax
call fcn.062b1109
pop ecx
pop ecx
mov edi, eax
mov ebp, edx
movups xmm0, xmmword [esp + 0x388]
movups xmmword [edx], xmm0
movsd xmm0, qword [esp + 0x395]
movsd qword [edx + 0xd], xmm0
push ebx
push dword [esp + 0x3c]
lea ebx, [esp + 0x118]
push ebx
call fcn.062aef40
add esp, 0xc
lea ecx, [esp + 0x5f4]
mov edx, ebx
call fcn.06285da4
mov eax, dword [esp + 0x44]
mov dword [esp + 0x5e4], eax
movsd xmm0, qword [esp + 0x3c]
movsd qword [esp + 0x5dc], xmm0
mov dword [esp + 0x5e8], edi
lea edi, [esp + 0x388]
mov dword [esp + 0x5ec], ebp
mov ebp, dword [esp + 0x850]
push 0x15
pop eax
mov dword [esp + 0x5f0], eax
mov ecx, ebx
call fcn.06283a26
mov ecx, ebp
lea edx, [esp + 0x5dc]
call fcn.062a2569
lea eax, [esp + 0x94]
push eax
call fcn.062b1154
pop eax
mov eax, esi
jmp 0x62a79a3
mov dword [esp], edi
mov dword [esp + 4], ebx
mov eax, esp
push eax
call fcn.0629fc6d
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x6314234
mov dword [esp + 0x10], 0x80000000
mov ebp, dword [esp + 0x850]
jmp 0x62a7c08
mov ebp, dword [esp + 0x850]
jmp 0x62a7bcd
mov edi, dword [esp + 0x88]
lea eax, [esp + 0x10]
push eax
call fcn.062b1154
pop eax
push dword [esp + 0x2c]
call dword [section..rdata]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov eax, esp
push eax
call fcn.0629fc6d
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x6314234
mov dword [esp + 0x10], 0x80000000
lea eax, [esp + 0x3c]
push eax
call fcn.062b1154
pop eax
lea ecx, [esp + 0x388]
call fcn.06283bce
lea ecx, [esp + 0x5dc]
call fcn.06283a08
lea edi, [esp + 0x388]
lea ecx, [esp + 0x20]
call fcn.06283bdd
lea ecx, [esp + 0x64]
call fcn.06283bdd
lea eax, [esp + 0x58]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x78]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x4c]
push eax
call fcn.062b1154
pop eax
mov ecx, dword [esp + 0x84c]
call fcn.062940c1
lea ecx, [esp + 0x14]
call fcn.062941ac
lea esi, [esp + 0xa4]
push 7
push 0x6314e19
push esi
call fcn.062dc4c0
add esp, 0xc
cmp dword [esi], 0x80000001
jne 0x62a7d0b
mov eax, dword [esp + 0xa8]
cmp eax, 0x80000000
je 0x62a7e05
mov cl, byte [esp + 0xac]
mov edx, dword [esp + 0xad]
mov dword [esp + 0x41], edx
mov edx, dword [esp + 0xb0]
mov dword [esp + 0x44], edx
mov dword [esp + 0x3c], eax
mov byte [esp + 0x40], cl
lea eax, [0x630643a]
lea ecx, [esp + 0x110]
mov dword [ecx], eax
mov eax, dword [ecx]
mov dword [ecx], 0x163f0da4
lea esi, [esp + 0x110]
push dword [esi]
push eax
call fcn.062a44ea
pop ecx
pop edx
xorps xmm0, xmm0
movups xmmword [esi], xmm0
and dword [esi + 0x10], 0
xor ecx, ecx
cmp ecx, 0x13
ja 0x62a7d17
mov edx, dword [ecx + 0x63151c8]
xor edx, dword [eax + ecx]
mov dword [esp + ecx + 0x110], edx
add ecx, 4
jmp 0x62a7cf1
push esi
call fcn.062a170e
pop eax
jmp 0x62a7e05
mov al, byte [eax + 0x14]
xor al, 0xfa
mov byte [esp + 0x124], al
movups xmm0, xmmword [esp + 0x110]
movups xmmword [esp + 0x388], xmm0
movsd xmm0, qword [esp + 0x11d]
movsd qword [esp + 0x395], xmm0
mov dword [esp + 0x110], edi
lea edi, [esp + 0x3c]
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov dword [esp + 8], esi
lea edx, [esp + 0x5dc]
mov dword [edx], 0x63151b0
mov dword [edx + 4], 3
and dword [edx + 0x10], 0
mov dword [esp + 0x114], 0x15
mov dword [esp + 0xc], 0x62b0320
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 2
lea esi, [esp + 0x94]
mov ecx, esi
call fcn.062a24c8
push edi
call fcn.062b1154
pop eax
mov edi, dword [esi + 4]
mov ebx, dword [esi + 8]
mov ecx, edi
mov edx, ebx
call fcn.062a11d5
test al, al
je 0x62a7df7
sub esp, 0x2c
mov dword [esp + 0x28], ebp
movaps xmm0, xmmword [0x63140f0]
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edi
mov eax, 0x6314664
mov dword [esp + 8], eax
and dword [esp + 0xc], 0
mov dword [esp], eax
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
push esi
call fcn.062b1154
pop eax
lea edi, [esp + 0x388]
lea esi, [esp + 0xb4]
push 7
push 0x6314e19
push esi
call fcn.062dc4c0
add esp, 0xc
cmp dword [esi], 0x80000001
jne 0x62a7f01
mov eax, dword [esp + 0xb8]
cmp eax, 0x80000000
je 0x62a7f08
mov cl, byte [esp + 0xbc]
mov edx, dword [esp + 0xbd]
lea edi, [esp + 0x110]
mov dword [edi + 5], edx
mov edx, dword [esp + 0xc0]
mov dword [edi + 8], edx
mov dword [edi], eax
mov byte [edi + 4], cl
lea edx, [esp + 0x5dc]
mov dword [edx], 0x63150a4
mov dword [edx + 4], 2
and dword [edx + 0x10], 0
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 1
lea esi, [esp + 0x388]
mov ecx, esi
call fcn.062a24c8
push edi
call fcn.062b1154
pop eax
mov edi, dword [esi + 4]
mov ebx, dword [esi + 8]
mov ecx, edi
mov edx, ebx
call fcn.062a11d5
test al, al
je 0x62a7ef1
sub esp, 0x2c
mov dword [esp + 0x28], ebp
movaps xmm0, xmmword [0x6314100]
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edi
mov eax, 0x6314664
mov dword [esp + 8], eax
and dword [esp + 0xc], 0
mov dword [esp], eax
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
push esi
call fcn.062b1154
pop eax
lea edi, [esp + 0x388]
jmp 0x62a7f08
push esi
call fcn.062a170e
pop eax
lea esi, [esp + 0xc4]
push 7
push 0x6314e19
push esi
call fcn.062dc4c0
add esp, 0xc
cmp dword [esi], 0x80000001
jne 0x62a8053
mov eax, dword [esp + 0xc8]
cmp eax, 0x80000000
je 0x62a805a
mov cl, byte [esp + 0xcc]
mov edx, dword [esp + 0xcd]
mov dword [esp + 0x38d], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x390], edx
mov dword [esp + 0x388], eax
mov byte [esp + 0x38c], cl
lea edx, [esp + 0x5dc]
mov dword [edx], 0x6315134
mov dword [edx + 4], 2
and dword [edx + 0x10], 0
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 1
lea esi, [esp + 0x110]
mov ecx, esi
call fcn.062a24c8
mov ecx, dword [esi + 4]
mov edx, dword [esi + 8]
call fcn.062a11d5
mov ebx, eax
push esi
call fcn.062b1154
pop eax
test bl, bl
je 0x62a804b
lea edx, [esp + 0x5dc]
mov dword [edx], 0x6315134
mov dword [edx + 4], 2
and dword [edx + 0x10], 0
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 1
mov ecx, esi
call fcn.062a24c8
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x118]
sub esp, 0x2c
mov dword [esp + 0x28], ebp
movaps xmm0, xmmword [0x6314110]
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov eax, 0x6314664
mov dword [esp + 8], eax
and dword [esp + 0xc], 0
mov dword [esp], eax
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
push esi
call fcn.062b1154
pop eax
push edi
call fcn.062b1154
jmp 0x62a8059
push esi
call fcn.062a170e
pop eax
lea esi, [esp + 0xd4]
push 7
push 0x6314e19
push esi
call fcn.062dc4c0
add esp, 0xc
cmp dword [esi], 0x80000001
jne 0x62a81a5
mov eax, dword [esp + 0xd8]
cmp eax, 0x80000000
je 0x62a81ac
mov cl, byte [esp + 0xdc]
mov edx, dword [esp + 0xdd]
mov dword [esp + 0x38d], edx
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x390], edx
mov dword [esp + 0x388], eax
mov byte [esp + 0x38c], cl
lea edx, [esp + 0x5dc]
mov dword [edx], 0x63150b8
mov dword [edx + 4], 2
and dword [edx + 0x10], 0
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 1
lea esi, [esp + 0x110]
mov ecx, esi
call fcn.062a24c8
mov ecx, dword [esi + 4]
mov edx, dword [esi + 8]
call fcn.062a11d5
mov ebx, eax
push esi
call fcn.062b1154
pop eax
test bl, bl
je 0x62a819d
lea edx, [esp + 0x5dc]
mov dword [edx], 0x63150b8
mov dword [edx + 4], 2
and dword [edx + 0x10], 0
mov dword [esp], edi
mov dword [esp + 4], 0x6284db0
mov eax, esp
mov dword [edx + 8], eax
mov dword [edx + 0xc], 1
mov ecx, esi
call fcn.062a24c8
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x118]
sub esp, 0x2c
mov dword [esp + 0x28], ebp
movaps xmm0, xmmword [0x6314120]
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov eax, 0x6314664
mov dword [esp + 8], eax
and dword [esp + 0xc], 0
mov dword [esp], eax
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
push esi
call fcn.062b1154
pop eax
push edi
call fcn.062b1154
jmp 0x62a81ab
push esi
call fcn.062a170e
pop eax
push ebp
call fcn.0628b6d5
pop ecx
lea eax, [0x6308ab8]
lea ecx, [esp + 0x5dc]
mov dword [ecx], eax
mov eax, dword [ecx]
mov dword [ecx], 0xf370654d
push dword [ecx]
push eax
call fcn.062a3d76
pop ecx
pop edx
and dword [esp + 0x70], 0
xor edx, edx
mov bl, 1
push 4
pop ecx
test bl, 1
je 0x62a81ff
movzx esi, byte [edx + str.Hm:_D_1]
or esi, 0xf3f48300
xor esi, dword [eax + edx]
mov dword [esp + edx + 0x70], esi
xor ebx, ebx
mov edx, ecx
jmp 0x62a81e0
movzx eax, word [eax + 4]
xor eax, 0x1221
mov word [esp + 0x74], ax
push 6
pop esi
push 0
push esi
call fcn.062b1109
pop ecx
pop ecx
mov ecx, dword [esp + 0x70]
mov dword [edx], ecx
movzx ecx, word [esp + 0x74]
mov word [edx + 4], cx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], esi
movaps xmm0, xmmword [0x6314130]
movups xmmword [esp + 0x5dc], xmm0
movaps xmm0, xmmword [0x6314140]
movups xmmword [esp + 0x5ec], xmm0
movaps xmm0, xmmword [0x6314150]
movups xmmword [esp + 0x5fc], xmm0
mov dword [esp + 0x60c], 0x65
mov dword [esp + 0x84], 0x73
mov dword [esp + 0x88], 0x71
mov dword [esp + 0x8c], 0x6c
and dword [esp + 0x4c], 0
mov dword [esp + 0x50], 4
and dword [esp + 0x54], 0
lea esi, [esp + 0xe4]
push 7
push 0x6314e19
push esi
call fcn.062dc4c0
add esp, 0xc
cmp dword [esi], 0x80000001
jne 0x62a8398
mov eax, dword [esp + 0xe8]
cmp eax, 0x80000000
je 0x62a839f
mov ecx, dword [esp + 0xed]
lea ebx, [esp + 0x78]
mov dword [ebx + 5], ecx
mov ecx, dword [esp + 0xf0]
mov dword [ebx + 8], ecx
mov dword [ebx], eax
mov dword [esp + 0x388], ebx
mov eax, 0x6284db0
mov dword [esp + 0x38c], eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x390], ecx
mov dword [esp + 0x394], eax
mov ecx, edi
lea edi, [esp + 0x110]
mov dword [edi], 0x631514c
mov dword [edi + 4], 3
and dword [edi + 0x10], 0
mov al, byte [esp + 0xec]
mov byte [ebx + 4], al
mov dword [edi + 8], ecx
mov dword [edi + 0xc], 2
lea ecx, [esp + 0x58]
mov edx, edi
call fcn.062a24c8
lea eax, [0x631529c]
mov dword [edi], eax
lea eax, [esp + 0x110]
mov ecx, dword [eax]
mov dword [eax], 0x9cde076d
lea esi, [esp + 0x110]
push dword [esi]
push ecx
call fcn.062a3ebd
pop ecx
pop edx
and dword [esi + 4], 0
and dword [esi], 0
xor ecx, ecx
cmp ecx, 7
ja 0x62a83ad
mov edx, dword [ecx + 0x631516c]
xor edx, dword [eax + ecx]
mov dword [esp + ecx + 0x110], edx
add ecx, 4
jmp 0x62a837e
push esi
call fcn.062a170e
pop eax
lea ecx, [esp + 0x4c]
call fcn.06283bdd
jmp 0x62a87d0
mov al, byte [eax + 8]
xor al, 0xe
lea edi, [esp + 0x110]
movsd xmm0, qword [edi]
movsd qword [esp + 0x388], xmm0
mov byte [esp + 0x390], al
lea esi, [esp + 0x388]
mov dword [esp], esi
lea eax, [esp + 0x3c]
mov ecx, esp
mov dword [eax], ecx
mov dword [edi], 0x6315164
xor ecx, ecx
inc ecx
mov dword [edi + 4], ecx
and dword [edi + 0x10], 0
mov dword [esp + 4], 9
mov dword [eax + 4], 0x62b0320
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
lea ebp, [esp + 0x64]
mov ecx, ebp
mov edx, edi
call fcn.062a24c8
mov dword [esp + 0x388], ebx
mov eax, 0x6284db0
mov dword [esp + 0x38c], eax
mov dword [edi], 0x631514c
mov dword [edi + 4], 3
and dword [edi + 0x10], 0
mov dword [esp + 0x390], ebp
mov dword [esp + 0x394], eax
mov dword [edi + 8], esi
mov dword [edi + 0xc], 2
lea edi, [esp + 0x36c]
lea ebp, [esp + 0x110]
mov ecx, edi
mov edx, ebp
call fcn.062a24c8
lea ecx, [esp + 0x4c]
mov edx, edi
call fcn.062a25a5
lea eax, [0x63100bd]
mov dword [ebp], eax
lea eax, [esp + 0x110]
mov ecx, dword [eax]
mov dword [eax], 0xd2053331
push dword [eax]
push ecx
call fcn.062a44c5
pop ecx
pop edx
xorps xmm0, xmm0
movsd qword [esp], xmm0
and dword [esp + 8], 0
xor ecx, ecx
cmp ecx, 0xb
ja 0x62a84b6
mov edx, dword [ecx + 0x6315175]
xor edx, dword [eax + ecx]
mov dword [esp + ecx], edx
add ecx, 4
jmp 0x62a84a0
movzx ecx, byte [eax + 0xe]
movzx eax, word [eax + 0xc]
xor eax, 0x3dc7
mov word [esp + 0xc], ax
xor cl, 0x65
mov byte [esp + 0xe], cl
push 0xf
pop esi
push 0
push esi
call fcn.062b1109
pop ecx
pop ecx
movsd xmm0, qword [esp]
movsd xmm1, qword [esp + 7]
movsd qword [edx], xmm0
movsd qword [edx + 7], xmm1
lea ecx, [esp + 0xf4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov dword [ecx + 8], esi
mov dword [esp + 0x110], ebx
mov ebx, 0x6284db0
mov dword [esp + 0x114], ebx
lea eax, [esp + 0x2c]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ebx
mov eax, 0x6315184
lea ebp, [esp + 0x388]
mov dword [ebp], eax
push 4
pop eax
mov dword [ebp + 4], eax
and dword [ebp + 0x10], 0
mov dword [esp + 0x120], ecx
mov dword [esp + 0x124], ebx
lea eax, [esp + 0x110]
mov dword [ebp + 8], eax
push 3
pop eax
mov dword [ebp + 0xc], eax
lea esi, [esp + 0x20]
mov ecx, esi
lea edx, [esp + 0x388]
call fcn.062a24c8
lea edi, [esp + 0x4c]
mov ecx, edi
mov edx, esi
call fcn.062a25a5
lea esi, [esp + 0x10]
lea eax, [esp + 0x5dc]
push eax
push esi
call fcn.062a575f
pop eax
pop ecx
lea eax, [esp + 0x78]
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], ebx
lea eax, [esp + 0x2c]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ebx
mov eax, 0x6315184
mov dword [ebp], eax
push 4
pop eax
mov dword [ebp + 4], eax
and dword [ebp + 0x10], 0
mov dword [esp + 0x120], esi
mov dword [esp + 0x124], ebx
lea eax, [esp + 0x110]
mov dword [ebp + 8], eax
push 3
pop eax
mov dword [ebp + 0xc], eax
lea esi, [esp + 0x378]
mov ecx, esi
mov edx, ebp
call fcn.062a24c8
mov ecx, edi
mov edx, esi
call fcn.062a25a5
lea eax, [esp + 0x84]
lea esi, [esp + 0x94]
push eax
push esi
call fcn.062a579b
pop eax
pop ecx
mov eax, 0x6315184
mov dword [ebp], eax
push 4
pop eax
mov dword [ebp + 4], eax
and dword [ebp + 0x10], 0
lea eax, [esp + 0x110]
mov dword [ebp + 8], eax
push 3
pop eax
mov dword [ebp + 0xc], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], ebx
lea eax, [esp + 0x2c]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x120], esi
mov dword [esp + 0x124], ebx
lea esi, [esp + 0x3c]
lea edx, [esp + 0x388]
mov ecx, esi
call fcn.062a24c8
mov ecx, edi
mov edx, esi
call fcn.062a25a5
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x60]
sub esp, 0x2c
mov ebp, dword [esp + 0x87c]
mov dword [esp + 0x28], ebp
movaps xmm0, xmmword [0x6314160]
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov esi, 0x6314664
mov dword [esp + 8], esi
and dword [esp + 0xc], 0
mov dword [esp], esi
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
mov ecx, dword [edi]
mov eax, dword [edi + 4]
imul edi, dword [edi + 8], 0xc
lea edx, [eax + edi]
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], edx
test edi, edi
je 0x62a877a
lea ebx, [eax + 0xc]
mov dword [esp + 0x114], ebx
mov ecx, dword [eax]
cmp ecx, 0x80000000
je 0x62a877a
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x388], ecx
mov dword [esp + 0x390], eax
mov dword [esp + 0x38c], edx
sub esp, 0x2c
mov dword [esp + 0x28], ebp
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
and dword [esp + 0x1c], 0
mov dword [esp + 8], esi
and dword [esp + 0x18], 0
mov dword [esp], esi
and dword [esp + 0xc], 0
mov dword [esp + 0x24], 0xa
and dword [esp + 4], 0
call fcn.0628c33c
add esp, 0x2c
lea eax, [esp + 0x388]
push eax
call fcn.062b1154
pop eax
add edi, 0xfffffff4
mov eax, ebx
jmp 0x62a86f1
lea eax, [esp + 0x110]
push eax
call fcn.06295a11
pop eax
lea eax, [esp + 0x94]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x10]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0xf4]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x64]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x58]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x78]
push eax
call fcn.062b1154
pop eax
lea eax, [esp + 0x2c]
push eax
call fcn.062b1154
pop eax
add esp, 0x838
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, esp
push eax
call fcn.06295a11
pop eax
jmp 0x62a7c63
mov dword [esp + 0x5e0], ebp
mov dword [esp + 0x5dc], edi
lea eax, [esp + 0x5dc]
push eax
call fcn.0629fc6d
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x6314234
mov dword [esp + 0x10], 0x80000000
mov ebp, dword [esp + 0x850]
jmp 0x62a7c14
lea ecx, [esp + 0x10]
call fcn.06283bdd
jmp 0x62a7c63