Function at 0x468e30
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x82540a
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x280
mov eax, dword [0x93cf44]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edx, ecx
mov dword [ebp - 0x1c], edx
mov esi, dword [ebx + 8]
mov dword [ebp - 0x26c], esi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
lea eax, [edx + 0x830]
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x25c], eax
jb 0x468eb2
mov eax, dword [eax]
mov dword [ebp - 0x25c], eax
cmp dword [0x181dc94], 8
mov eax, 0x181dc80
cmovae eax, dword [0x181dc80]
cmp dword [edx + 0x7cc], 8
mov dword [ebp - 0x264], eax
lea eax, [edx + 0x7b8]
mov dword [ebp - 0x260], eax
jb 0x468ee8
mov eax, dword [eax]
mov dword [ebp - 0x260], eax
mov ecx, 0x17
lea edi, [ebp - 0x1e0]
mov esi, 0x9018a8
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor esi, esi
cmp dword [0x1817094], 2
jl 0x469032
movaps xmm4, xmmword [0x9046b0]
mov eax, 5
movaps xmm3, xmmword [0x904770]
movaps xmm6, xmmword [0x9046e0]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, esi
lea eax, [esi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x904710]
paddw xmm1, xmm0
movq xmm0, qword [ebp + esi*2 - 0x1e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + esi*2 - 0x1e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x904710]
paddw xmm1, xmm0
movq xmm0, qword [ebp + esi*2 - 0x1d8]
pxor xmm1, xmm0
movq qword [ebp + esi*2 - 0x1d8], xmm1
add esi, 8
cmp esi, 0x28
jl 0x468f32
cmp esi, 0x2f
jge 0x469069
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
shl ecx, 3
sub eax, ecx
add eax, 0x35
xor word [ebp + esi*2 - 0x1e0], ax
inc esi
cmp esi, 0x2f
jl 0x469032
mov edx, dword [ebp - 0x1c]
lea eax, [edx + 0xe8]
push eax
lea eax, [edx + 0x128]
push eax
push dword [ebp - 0x25c]
lea eax, [ebp - 0x1e0]
push dword [ebp - 0x264]
push dword [ebp - 0x260]
push 0x9011c0
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00415ad0
add esp, 0x20
xorps xmm0, xmm0
mov dword [ebp - 0x150], 0
xor eax, eax
movlpd qword [ebp - 0x168], xmm0
movaps xmm0, xmmword [0x904700]
mov dword [ebp - 0x14c], 7
mov word [ebp - 0x160], ax
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], 7
mov word [ebp - 0x148], ax
movups xmmword [ebp - 0x130], xmm0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x74]
cmp dword [ebp - 0x48], 8
lea eax, [ebp - 0x5c]
push ecx
cmovae eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0x168]
push eax
call fcn.00481520
xor edi, edi
lea esi, [edi + 1]
cmp dword [ebp - 0x64], edi
je 0x469590
push edi
lea ecx, [ebp - 0x290]
call fcn.0048a040
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 3
call fcn.0048f580
push esi
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x258]
call fcn.00491220
lea ecx, [ebp - 0x290]
call fcn.0048caa0
test al, al
je 0x469560
push 0x90120c
lea ecx, [ebp - 0x290]
call fcn.0048a840
lea ecx, [ebp - 0xbc]
push ecx
mov ecx, eax
call fcn.0048bb10
mov edx, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xa4]
call fcn.004799b0
mov edx, eax
mov byte [ebp - 4], 6
cmp dword [edx + 0x14], 8
jb 0x4691a1
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x28], 0
xor eax, eax
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4691c0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x38]
call fcn.0040eb10
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x90]
cmp edx, 8
jb 0x46921d
mov ecx, dword [ebp - 0xa4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x469213
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d26
push edx
push ecx
call fcn.005c4046
add esp, 8
xor eax, eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 7
mov word [ebp - 0xa4], ax
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0xa8]
cmp edx, 0x10
jb 0x469278
mov ecx, dword [ebp - 0xbc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46926e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d2b
push edx
push ecx
call fcn.005c4046
add esp, 8
push 0x901214
lea ecx, [ebp - 0x290]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], 0
call fcn.0048a840
lea ecx, [ebp - 0x180]
push ecx
mov ecx, eax
call fcn.0048bb10
cmp dword [eax + 0x14], 0x10
jb 0x4692b9
mov eax, dword [eax]
push eax
call fcn.006d9256
mov edx, dword [ebp - 0x16c]
add esp, 4
mov esi, eax
mov dword [ebp - 0x264], esi
cmp edx, 0x10
jb 0x469304
mov ecx, dword [ebp - 0x180]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4692fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d30
push edx
push ecx
call fcn.005c4046
add esp, 8
cmp dword [ebp - 0x28], 0
je 0x4693d2
mov edi, dword [0x83d364]
xor esi, esi
mov dword [ebp - 0x260], 1
mov ecx, dword [ebp - 0x26c]
xorps xmm0, xmm0
movlpd qword [ebp - 0x120], xmm0
movaps xmm0, xmmword [0x904700]
mov dword [ebp - 0x108], 0
mov eax, dword [ecx]
mov dword [ecx + 4], eax
xor eax, eax
mov dword [ebp - 0x104], 7
mov word [ebp - 0x118], ax
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], 7
mov word [ebp - 0x100], ax
movups xmmword [ebp - 0xe8], xmm0
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x38]
cmp dword [ebp - 0x24], 8
push ecx
cmovae eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x120]
push eax
call fcn.00480b70
test eax, eax
je 0x4693aa
mov ecx, dword [ebp - 0x26c]
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
cmp eax, 0x400
ja 0x469413
push 0xc8
call edi
lea ecx, [ebp - 0x120]
inc esi
call fcn.00480ad0
cmp esi, 3
jl 0x469320
mov esi, dword [ebp - 0x264]
mov edi, dword [ebp - 0x260]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x24]
cmp edx, 8
jb 0x469560
mov ecx, dword [ebp - 0x38]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x469556
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d35
jmp 0x469556
mov ax, word [0x9006bc]
movq xmm0, qword [0x9006b4]
movq qword [ebp - 0x20], xmm0
mov word [ebp - 0x18], ax
test ah, ah
je 0x469473
xor ecx, ecx
mov dword [ebp - 0x25c], ecx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [ebp - 0x25c]
shl cl, 3
sub al, cl
mov ecx, dword [ebp - 0x25c]
add al, 0x35
xor byte [ebp + ecx - 0x20], al
inc ecx
mov dword [ebp - 0x25c], ecx
cmp ecx, 0xa
jl 0x469436
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0xd4]
call fcn.004063f0
mov esi, dword [ebp - 0x26c]
lea ecx, [ebp - 0xd4]
mov edx, esi
call fcn.00415250
mov edx, dword [ebp - 0xc0]
cmp edx, 0x10
jb 0x4694cf
mov ecx, dword [ebp - 0xd4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4694c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d3a
push edx
push ecx
call fcn.005c4046
add esp, 8
mov ecx, dword [esi]
mov eax, dword [esi + 4]
push 0
sub eax, ecx
push eax
push ecx
call fcn.005e6b2e
add esp, 0xc
lea ecx, [ebp - 0x120]
call fcn.00480ad0
mov edx, dword [ebp - 0x24]
cmp edx, 8
jb 0x469527
mov ecx, dword [ebp - 0x38]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46951d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d3f
push edx
push ecx
call fcn.005c4046
add esp, 8
xor eax, eax
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x258]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00465a40
lea ecx, [ebp - 0x290]
call fcn.0048a390
jmp 0x469c78
push edx
push ecx
call fcn.005c4046
add esp, 8
lea ecx, [ebp - 0x258]
call fcn.00465a40
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 2
call fcn.0048a390
test edi, edi
je 0x469590
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x77c], 0
je 0x469590
mov dword [eax + 0x77c], esi
push 4
call fcn.005e6b21
add esp, 4
push 0x8ff298
call fcn.005e6ad8
mov eax, dword fs:[0x30]
add esp, 4
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
movzx edx, word [eax + 0x2c]
mov esi, 0x811c9dc5
mov edi, dword [eax + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x260], 0
lea ecx, [edx + edi]
inc edx
shr edx, 1
cmp edi, ecx
cmova edx, dword [ebp - 0x264]
mov dword [ebp - 0x264], edx
test edx, edx
je 0x469627
mov eax, dword [ebp - 0x260]
mov dl, byte [edi]
lea ecx, [edx - 0x41]
cmp cl, 0x19
movsx ecx, dl
ja 0x469608
or ecx, 0x20
xor esi, ecx
inc eax
imul esi, esi, 0x1000193
add edi, 2
cmp eax, dword [ebp - 0x264]
jne 0x4695f8
mov eax, dword [ebp - 0x1c]
cmp esi, 0xa3e6f6c3
je 0x46962b
mov eax, dword [eax]
jmp 0x4695b3
mov edi, dword [0x181dbc4]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x260], esi
test edi, edi
jne 0x469703
test esi, esi
je 0x4696fb
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x1c], ecx
cmp ecx, esi
je 0x4696fb
xor eax, eax
mov dword [ebp - 0x25c], eax
cmp dword [ecx + 0x18], eax
je 0x4696fb
mov edi, dword [ecx + 0x20]
add edi, esi
nop
mov edx, dword [edi]
add edx, esi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4696bb
mov al, cl
sub al, 0x41
cmp al, 0x19
movsx eax, cl
ja 0x46969e
or eax, 0x20
mov cl, byte [edx]
xor esi, eax
imul esi, esi, 0x1000193
inc edx
test cl, cl
jne 0x469690
cmp esi, 0xcc83e81f
je 0x4696d5
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x1c]
inc eax
add edi, 4
mov dword [ebp - 0x25c], eax
cmp eax, dword [ecx + 0x18]
je 0x4696fb
mov esi, dword [ebp - 0x260]
jmp 0x469680
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x260]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov edi, dword [eax + edx]
add edi, edx
jmp 0x4696fd
xor edi, edi
mov dword [0x181dbc4], edi
call fcn.005e2151
push 0x901220
push 0x70
push eax
call edi
mov dword [ebp - 0x264], eax
test eax, eax
je 0x469c78
mov ecx, dword fs:[0x30]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
movzx edx, word [ecx + 0x2c]
mov esi, 0x811c9dc5
mov edi, dword [ecx + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x25c], 0
lea eax, [edx + edi]
inc edx
shr edx, 1
cmp edi, eax
cmova edx, dword [ebp - 0x260]
mov dword [ebp - 0x260], edx
test edx, edx
je 0x4697a1
mov ecx, dword [ebp - 0x25c]
mov dl, byte [edi]
mov al, dl
sub al, 0x41
cmp al, 0x19
movsx eax, dl
ja 0x469782
or eax, 0x20
xor esi, eax
inc ecx
imul esi, esi, 0x1000193
add edi, 2
cmp ecx, dword [ebp - 0x260]
jne 0x469772
mov ecx, dword [ebp - 0x1c]
cmp esi, 0xa3e6f6c3
je 0x4697a5
mov ecx, dword [ecx]
jmp 0x46972d
mov edi, dword [0x181dbc8]
mov esi, dword [ecx + 0x18]
mov dword [ebp - 0x260], esi
test edi, edi
jne 0x469883
test esi, esi
je 0x46987b
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x1c], ecx
cmp ecx, esi
je 0x46987b
xor eax, eax
mov dword [ebp - 0x25c], eax
cmp dword [ecx + 0x18], eax
je 0x46987b
mov edi, dword [ecx + 0x20]
add edi, esi
nop dword [eax + eax]
mov edx, dword [edi]
add edx, esi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x46983b
mov al, cl
sub al, 0x41
cmp al, 0x19
movsx eax, cl
ja 0x46981e
or eax, 0x20
mov cl, byte [edx]
xor eax, esi
imul esi, eax, 0x1000193
inc edx
test cl, cl
jne 0x469810
cmp esi, 0xc5e040b9
je 0x469855
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x1c]
inc eax
add edi, 4
mov dword [ebp - 0x25c], eax
cmp eax, dword [ecx + 0x18]
je 0x46987b
mov esi, dword [ebp - 0x260]
jmp 0x469800
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x260]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov edi, dword [eax + edx]
add edi, edx
jmp 0x46987d
xor edi, edi
mov dword [0x181dbc8], edi
call fcn.005e2151
push dword [ebp - 0x264]
push eax
call edi
mov dword [ebp - 0x270], eax
test eax, eax
je 0x469c78
mov ecx, dword fs:[0x30]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
movzx edx, word [ecx + 0x2c]
mov eax, 0x811c9dc5
mov esi, dword [ecx + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x25c], eax
xor edi, edi
mov dword [ebp - 0x1c], ecx
lea eax, [edx + esi]
inc edx
shr edx, 1
cmp esi, eax
cmova edx, edi
mov dword [ebp - 0x260], edx
test edx, edx
je 0x46991a
mov ecx, dword [ebp - 0x25c]
mov dl, byte [esi]
mov al, dl
sub al, 0x41
cmp al, 0x19
movsx eax, dl
ja 0x4698f1
or eax, 0x20
xor eax, ecx
inc edi
imul ecx, eax, 0x1000193
add esi, 2
cmp edi, dword [ebp - 0x260]
jne 0x4698e1
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 0xa3e6f6c3
mov ecx, dword [ebp - 0x1c]
je 0x46991e
mov ecx, dword [ecx]
jmp 0x4698ac
mov edi, dword [0x181e078]
mov esi, dword [ecx + 0x18]
mov dword [ebp - 0x260], esi
test edi, edi
jne 0x4699f3
test esi, esi
je 0x4699eb
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], ecx
cmp ecx, esi
je 0x4699eb
xor eax, eax
mov dword [ebp - 0x25c], eax
cmp dword [ecx + 0x18], eax
je 0x4699eb
mov edi, dword [ecx + 0x20]
add edi, esi
nop
mov edx, dword [edi]
add edx, esi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4699ab
mov al, cl
sub al, 0x41
cmp al, 0x19
movsx eax, cl
ja 0x46998e
or eax, 0x20
mov cl, byte [edx]
xor eax, esi
imul esi, eax, 0x1000193
inc edx
test cl, cl
jne 0x469980
cmp esi, 0xb2a2babd
je 0x4699c5
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x1c]
inc eax
add edi, 4
mov dword [ebp - 0x25c], eax
cmp eax, dword [ecx + 0x18]
je 0x4699eb
mov esi, dword [ebp - 0x260]
jmp 0x469970
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x260]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov edi, dword [eax + edx]
add edi, edx
jmp 0x4699ed
xor edi, edi
mov dword [0x181e078], edi
call fcn.005e2151
push dword [ebp - 0x264]
push eax
call edi
mov dword [ebp - 0x260], eax
test eax, eax
je 0x469c78
mov ecx, dword fs:[0x30]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
movzx edx, word [ecx + 0x2c]
mov eax, 0x811c9dc5
mov esi, dword [ecx + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x25c], eax
xor edi, edi
mov dword [ebp - 0x264], ecx
lea eax, [edx + esi]
inc edx
shr edx, 1
cmp esi, eax
cmova edx, edi
mov dword [ebp - 0x1c], edx
test edx, edx
je 0x469a8a
mov ecx, dword [ebp - 0x25c]
mov dl, byte [esi]
mov al, dl
sub al, 0x41
cmp al, 0x19
movsx eax, dl
ja 0x469a61
or eax, 0x20
xor eax, ecx
inc edi
imul ecx, eax, 0x1000193
add esi, 2
cmp edi, dword [ebp - 0x1c]
jne 0x469a51
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 0xa3e6f6c3
mov ecx, dword [ebp - 0x264]
je 0x469a8e
mov ecx, dword [ecx]
jmp 0x469a1c
mov eax, dword [0x181e07c]
mov esi, dword [ecx + 0x18]
mov dword [ebp - 0x1c], esi
test eax, eax
jne 0x469b62
test esi, esi
je 0x469b5b
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x264], eax
xor eax, eax
mov dword [ebp - 0x264], ecx
cmp ecx, esi
je 0x469b5d
mov dword [ebp - 0x25c], eax
cmp dword [ecx + 0x18], eax
je 0x469b5b
mov edi, dword [ecx + 0x20]
add edi, esi
mov edx, dword [edi]
add edx, esi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x469b1b
mov al, cl
sub al, 0x41
cmp al, 0x19
movsx eax, cl
ja 0x469afe
or eax, 0x20
mov cl, byte [edx]
xor eax, esi
imul esi, eax, 0x1000193
inc edx
test cl, cl
jne 0x469af0
cmp esi, 0xbe75ceea
je 0x469b35
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x264]
inc eax
add edi, 4
mov dword [ebp - 0x25c], eax
cmp eax, dword [ecx + 0x18]
je 0x469b5b
mov esi, dword [ebp - 0x1c]
jmp 0x469ae0
mov esi, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x1c]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
jmp 0x469b5d
xor eax, eax
mov dword [0x181e07c], eax
push dword [ebp - 0x270]
call eax
push dword [ebp - 0x270]
mov ecx, dword [ebp - 0x260]
mov esi, dword [ebp - 0x26c]
add ecx, eax
push ecx
push eax
mov ecx, esi
push dword [esi + 4]
call fcn.00407150
mov ax, word [0x9006bc]
movq xmm0, qword [0x9006b4]
movq qword [ebp - 0x44], xmm0
mov word [ebp - 0x3c], ax
test ah, ah
je 0x469bed
xor ecx, ecx
mov dword [ebp - 0x25c], ecx
nop dword [eax]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [ebp - 0x25c]
shl cl, 3
sub al, cl
mov ecx, dword [ebp - 0x25c]
add al, 0x35
xor byte [ebp + ecx - 0x44], al
inc ecx
mov dword [ebp - 0x25c], ecx
cmp ecx, 0xa
jl 0x469bb0
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x8c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x469c08
sub ecx, edx
lea eax, [ebp - 0x44]
push ecx
push eax
lea ecx, [ebp - 0x8c]
call fcn.004062c0
mov edx, esi
lea ecx, [ebp - 0x8c]
call fcn.00415250
mov edx, dword [ebp - 0x78]
cmp edx, 0x10
jb 0x469c65
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x469c5b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d44
push edx
push ecx
call fcn.005c4046
add esp, 8
mov ecx, dword [esi]
mov eax, dword [esi + 4]
push 0
sub eax, ecx
push eax
push ecx
call fcn.005e6b2e
add esp, 0xc
lea ecx, [ebp - 0x168]
call fcn.00480ad0
mov edx, dword [ebp - 0x48]
cmp edx, 8
jb 0x469cbd
mov ecx, dword [ebp - 0x5c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x469cb3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d49
push edx
push ecx
call fcn.005c4046
add esp, 8
mov edx, dword [ebp - 0x60]
xor eax, eax
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 7
mov word [ebp - 0x5c], ax
cmp edx, 0x10
jb 0x469d01
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x469cf7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469d4e
push edx
push ecx
call fcn.005c4046
add esp, 8
mov eax, 1
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.005c3e3a
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
call fcn.006d2f99
int3