Function at 0x44a3c0
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Check os version
Contain obfuscated stackstrings
Encode data using xor
Get process heap flags
Get process heap force flags
Hash data using fnv
Hash data with md5
Resolve function by parsing pe exports

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 0x822a3d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x2d8
mov eax, dword [0x93bf44]
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, ecx
mov dword [ebp - 0x2e4], edi
mov dword [ebp - 0x2ac], edi
mov dword [ebp - 0x2e8], edi
lea ecx, [edi + 8]
push 0
mov dword [edi], 0
mov dword [edi + 4], 0
call fcn.004884d0
mov dword [ebp - 4], 0
xor eax, eax
mov dword [edi + 0x30], 0
mov dword [edi + 0x34], 7
mov word [edi + 0x20], ax
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], 0xf
mov byte [edi + 0x38], al
mov dword [edi + 0x60], eax
mov dword [edi + 0x64], 0xf
mov byte [edi + 0x50], al
mov dword [edi + 0x78], eax
mov dword [edi + 0x7c], 7
mov word [edi + 0x68], ax
mov dword [edi + 0x90], eax
mov dword [edi + 0x94], 7
mov word [edi + 0x80], ax
mov dword [edi + 0xac], eax
mov dword [edi + 0xb0], 7
mov word [edi + 0x9c], ax
mov dword [edi + 0xc4], eax
mov dword [edi + 0xc8], 7
mov word [edi + 0xb4], ax
mov dword [edi + 0xdc], eax
mov dword [edi + 0xe0], 7
mov word [edi + 0xcc], ax
lea esi, [edi + 0x5c4]
mov dword [edi + 0xe4], eax
mov dword [edi + 0x5b8], eax
mov dword [edi + 0x5bc], eax
mov dword [ebp - 0x2ac], esi
mov dword [esi], 1
mov dword [esi + 4], 1
mov dword [esi + 8], eax
mov dword [esi + 0x34], eax
mov dword [esi + 0x38], 7
mov word [esi + 0x24], ax
mov byte [ebp - 4], 9
lea ecx, [esi + 0x44]
mov dword [esi + 0x3c], 1
mov dword [esi + 0x40], 1
push 0x2a
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
push str.http:__www.flmgr.net_win_fl_agreement.html
mov word [ecx], ax
call fcn.0040ea60
mov dword [esi + 0x5c], 0
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x70], 0
mov dword [esi + 0x74], 1
mov dword [esi + 0x78], 1
mov dword [esi + 0x7c], 0
mov dword [esi + 0x80], 0x18
mov dword [esi + 0x84], 0
mov dword [esi + 0x88], 1
mov dword [esi + 0x8c], 0
mov dword [esi + 0x90], 0
mov dword [esi + 0x94], 0
mov dword [esi + 0x98], 0
mov dword [esi + 0x9c], 0
mov dword [esi + 0xa0], 0
mov dword [esi + 0xa4], 0
mov dword [esi + 0xa8], 0
mov dword [esi + 0xac], 1
xor eax, eax
mov dword [esi + 0xc0], 0
mov dword [esi + 0xc4], 7
mov word [esi + 0xb0], ax
mov dword [edi + 0x69c], eax
mov dword [edi + 0x6a0], 7
mov word [edi + 0x68c], ax
mov dword [edi + 0x6ac], eax
mov dword [edi + 0x6b0], eax
mov dword [edi + 0x6b4], eax
mov dword [edi + 0x6c8], eax
mov dword [edi + 0x6cc], 7
mov word [edi + 0x6b8], ax
mov dword [edi + 0x6e0], eax
mov dword [edi + 0x6e4], 7
mov word [edi + 0x6d0], ax
mov dword [edi + 0x6f8], eax
mov dword [edi + 0x6fc], 7
mov word [edi + 0x6e8], ax
mov dword [edi + 0x710], eax
mov dword [edi + 0x714], 7
mov word [edi + 0x700], ax
mov dword [edi + 0x728], eax
mov dword [edi + 0x72c], 7
mov word [edi + 0x718], ax
mov dword [edi + 0x730], eax
mov dword [edi + 0x734], eax
mov dword [edi + 0x738], 1
mov dword [edi + 0x754], eax
mov dword [edi + 0x758], 0xf
mov byte [edi + 0x744], al
mov dword [edi + 0x76c], eax
mov dword [edi + 0x770], 7
mov word [edi + 0x75c], ax
mov byte [ebp - 4], 0x12
lea esi, [edi + 0x774]
mov dword [ebp - 0x2ac], esi
mov dword [esi], eax
mov dword [esi + 4], eax
call fcn.004722f0
mov dword [esi], eax
mov dword [edi + 0x77c], 1
mov dword [edi + 0x780], 0
mov dword [edi + 0x784], 0
mov dword [edi + 0x788], 0xffffffff
mov dword [edi + 0x78c], 0
mov dword [edi + 0x790], 1
mov dword [edi + 0x794], 0
mov dword [edi + 0x798], 0
mov dword [edi + 0x79c], 0
mov dword [edi + 0x7a0], 0
mov dword [edi + 0x7a4], 0
mov dword [edi + 0x7a8], 0
mov dword [edi + 0x7ac], 0
mov dword [edi + 0x7b0], 0
mov dword [edi + 0x7b4], 0
xor ecx, ecx
mov dword [edi + 0x7c8], 0
mov dword [edi + 0x7cc], 7
mov word [edi + 0x7b8], cx
mov dword [edi + 0x7e0], ecx
mov dword [edi + 0x7e4], 7
mov word [edi + 0x7d0], cx
mov dword [edi + 0x7f8], ecx
mov dword [edi + 0x7fc], 7
xor eax, eax
mov word [edi + 0x7e8], ax
mov dword [edi + 0x810], eax
mov dword [edi + 0x814], 7
mov word [edi + 0x800], ax
mov dword [edi + 0x818], eax
mov dword [edi + 0x81c], eax
mov dword [edi + 0x820], 1
mov dword [edi + 0x824], 1
mov dword [edi + 0x828], 1
mov dword [edi + 0x82c], eax
mov dword [edi + 0x840], eax
mov dword [edi + 0x844], 7
mov word [edi + 0x830], ax
mov dword [edi + 0x848], eax
mov dword [edi + 0x84c], eax
mov dword [edi + 0x850], eax
mov dword [edi + 0x854], eax
mov dword [edi + 0x858], eax
mov dword [edi + 0x85c], eax
mov byte [ebp - 4], 0x1d
lea esi, [edi + 0xc24]
mov dword [edi + 0x864], eax
mov ecx, esi
mov dword [ebp - 0x2ac], esi
push eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
push 0x8fd96c
mov word [esi], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x1e
lea ecx, [esi + 0x18]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x1f
lea ecx, [esi + 0x30]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
lea esi, [edi + 0xc6c]
mov byte [ebp - 4], 0x20
xor eax, eax
mov dword [ebp - 0x2ac], esi
push eax
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 7
push 0x8fd96c
mov word [esi], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x21
lea ecx, [esi + 0x18]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
mov byte [ebp - 4], 0x22
lea esi, [edi + 0xc9c]
xor eax, eax
mov dword [ebp - 0x2ac], esi
push eax
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 7
push 0x8fd96c
mov word [esi], ax
call fcn.0040ea60
mov byte [ebp - 4], 0x23
lea ecx, [esi + 0x1c]
xor eax, eax
mov dword [esi + 0x18], 0
push eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x24
lea ecx, [esi + 0x34]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
mov dword [esi + 0x4c], 0
xor eax, eax
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 7
mov word [esi + 0x50], ax
mov dword [esi + 0x78], eax
mov dword [esi + 0x7c], 7
mov word [esi + 0x68], ax
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], 7
mov word [esi + 0x80], ax
mov byte [ebp - 4], 0x25
lea esi, [edi + 0xd34]
mov dword [ebp - 0x2ac], esi
lea ecx, [esi + 8]
mov dword [esi], eax
mov dword [esi + 4], eax
push eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x26
lea ecx, [esi + 0x20]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
mov dword [esi + 0x38], 0
xor eax, eax
mov dword [esi + 0x4c], 0
mov dword [esi + 0x50], 7
mov word [esi + 0x3c], ax
mov dword [esi + 0x64], eax
mov dword [esi + 0x68], 7
mov word [esi + 0x54], ax
mov dword [esi + 0x7c], eax
mov dword [esi + 0x80], 7
mov word [esi + 0x6c], ax
lea esi, [edi + 0xdb8]
mov byte [ebp - 4], 0x27
mov dword [ebp - 0x2ac], esi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
push eax
push 0x8fd96c
mov ecx, esi
mov word [esi], ax
call fcn.0040ea60
mov byte [ebp - 4], 0x28
lea ecx, [esi + 0x28]
xor eax, eax
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x20], 1
mov dword [esi + 0x24], 0
push eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x29
lea ecx, [esi + 0x40]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x2a
lea ecx, [esi + 0x58]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
xor eax, eax
mov byte [ebp - 4], 0x2b
lea ecx, [esi + 0x70]
mov dword [ecx + 0x10], 0
push eax
mov dword [ecx + 0x14], 7
push 0x8fd96c
mov word [ecx], ax
call fcn.0040ea60
mov dword [edi + 0xe40], 0
mov dword [edi + 0xe44], 0
mov dword [edi + 0xe48], 0
mov dword [edi + 0xe4c], 0
sub esp, 8
mov byte [ebp - 4], 0x2e
lea ecx, [edi + 0xe80]
call fcn.0040a4c0
mov dword [edi + 0xf34], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x30
call fcn.00416a50
movups xmm1, xmmword [ebp - 0x9c]
mov byte [ebp - 0x9c], 0
movq xmm0, qword [ebp - 0x8c]
movups xmmword [ebp - 0xb4], xmm1
mov dword [ebp - 0x8c], 0
movq qword [ebp - 0xa4], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0xb4]
cmp dword [ebp - 0xa0], 0x10
movd eax, xmm1
cmovae ecx, eax
mov dword [ebp - 0x2ac], ecx
lea ecx, [ebp - 0x12c]
call fcn.00417160
mov dword [ebp - 0x2bc], eax
mov byte [ebp - 4], 0x32
cmp dword [eax + 0x14], 0x10
jb 0x44ac3c
mov eax, dword [eax]
mov dword [ebp - 0x2bc], eax
lea ecx, [ebp - 0x114]
call fcn.00417570
mov esi, eax
mov byte [ebp - 4], 0x33
cmp dword [esi + 0x14], 0x10
jb 0x44ac55
mov esi, dword [esi]
lea ecx, [ebp - 0xfc]
call fcn.00417830
mov dword [ebp - 0x2b0], eax
mov byte [ebp - 4], 0x34
cmp dword [eax + 0x14], 0x10
jb 0x44ac78
mov eax, dword [eax]
mov dword [ebp - 0x2b0], eax
movups xmm0, xmmword [0x901a64]
mov al, byte [0x901a74]
xor edx, edx
cmp dword [0x1816094], 2
movups xmmword [ebp - 0x6c], xmm0
mov byte [ebp - 0x5c], al
mov dword [ebp - 0x2c4], edx
jl 0x44ade2
movaps xmm0, xmmword [0x903730]
mov eax, 4
movaps xmm4, xmmword [0x9036b0]
movaps xmm3, xmmword [0x903750]
movaps xmm6, xmmword [0x9036e0]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [ebp - 0x2e0], xmm0
mov ecx, dword [ebp - 0x2e0]
movd xmm7, eax
nop dword [eax + eax]
movd xmm0, edx
lea eax, [edx + 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
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
pand xmm1, xmmword [0x903720]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x6c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x6c], 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
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
pand xmm1, xmmword [0x903720]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x68]
pxor xmm1, xmm0
movd dword [ebp + edx - 0x68], xmm1
add edx, 8
cmp edx, 0x10
jl 0x44ace0
mov dword [ebp - 0x2c4], edx
cmp edx, 0x11
jge 0x44ae16
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x2c4]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x38
xor byte [ebp + edx - 0x6c], cl
inc edx
mov dword [ebp - 0x2c4], edx
cmp edx, 0x11
jl 0x44ade2
push dword [ebp - 0x2ac]
lea eax, [ebp - 0x6c]
push dword [ebp - 0x2bc]
push esi
push dword [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x1a4]
push eax
call fcn.00415910
add esp, 0x18
mov byte [ebp - 4], 0x36
mov edx, dword [ebp - 0xe8]
cmp edx, 0x10
jb 0x44ae7a
mov ecx, dword [ebp - 0xfc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44ae70
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b8f7
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0xf
mov byte [ebp - 0xfc], 0
mov byte [ebp - 4], 0x37
mov edx, dword [ebp - 0x100]
cmp edx, 0x10
jb 0x44aed3
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44aec9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b8fc
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
mov byte [ebp - 4], 0x38
mov edx, dword [ebp - 0x118]
cmp edx, 0x10
jb 0x44af2c
mov ecx, dword [ebp - 0x12c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44af22
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b901
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0xf
mov byte [ebp - 0x12c], 0
mov byte [ebp - 4], 0x39
mov edx, dword [ebp - 0xa0]
cmp edx, 0x10
jb 0x44af85
mov ecx, dword [ebp - 0xb4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44af7b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b906
push edx
push ecx
call fcn.005c24d6
add esp, 8
lea ecx, [ebp - 0x15c]
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
call fcn.00485a20
mov esi, eax
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x3a
call fcn.00485590
push esi
push eax
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x3b
push eax
call fcn.004782a0
add esp, 0xc
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x130]
cmp edx, 0x10
jb 0x44b00f
mov ecx, dword [ebp - 0x144]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44b005
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b90b
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0xf
mov byte [ebp - 0x144], 0
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x148]
cmp edx, 0x10
jb 0x44b068
mov ecx, dword [ebp - 0x15c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44b05e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b910
push edx
push ecx
call fcn.005c24d6
add esp, 8
cmp dword [ebp - 0xd0], 0x10
lea eax, [ebp - 0xe4]
push dword [ebp - 0xd4]
cmovae eax, dword [ebp - 0xe4]
lea ecx, [ebp - 0x238]
push eax
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0x148], 0xf
mov byte [ebp - 0x15c], 0
mov byte [ebp - 0x1d0], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x238], 0x67452301
mov dword [ebp - 0x234], 0xefcdab89
mov dword [ebp - 0x230], 0x98badcfe
mov dword [ebp - 0x22c], 0x10325476
call fcn.004074d0
lea eax, [ebp - 0x174]
push eax
lea ecx, [ebp - 0x238]
call fcn.00407de0
lea esi, [edi + 0x7b8]
mov dword [ebp - 0x2ac], eax
cmp esi, eax
je 0x44b13e
mov ecx, esi
call fcn.00406e40
mov eax, dword [ebp - 0x2ac]
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov edx, dword [ebp - 0x160]
cmp edx, 8
jb 0x44b17e
mov ecx, dword [ebp - 0x174]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44b174
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b915
push edx
push ecx
call fcn.005c24d6
add esp, 8
cmp esi, 0x181cd40
je 0x44b19d
cmp dword [esi + 0x14], 8
mov eax, dword [esi + 0x10]
jb 0x44b191
mov esi, dword [esi]
push eax
push esi
mov ecx, 0x181cd40
call fcn.0040ea60
push 0
call fcn.006dbbb5
mov dword [ebp - 0x2ac], eax
add esp, 4
mov ax, word [0x90087c]
mov esi, edx
mov word [ebp - 0x2c4], ax
xor edx, edx
mov al, byte [0x90087e]
mov byte [ebp - 0x2c2], al
mov dword [ebp - 0x2b0], edx
nop
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x2b0]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x38
xor byte [ebp + edx - 0x2c4], cl
inc edx
mov dword [ebp - 0x2b0], edx
cmp edx, 3
jl 0x44b1d0
push esi
push dword [ebp - 0x2ac]
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00415910
add esp, 0x10
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x84]
cmp dword [ebp - 0x70], 0x10
lea ecx, [ebp - 0x2a8]
push dword [ebp - 0x74]
cmovae eax, dword [ebp - 0x84]
push eax
mov byte [ebp - 0x240], 0
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x2a8], 0x67452301
mov dword [ebp - 0x2a4], 0xefcdab89
mov dword [ebp - 0x2a0], 0x98badcfe
mov dword [ebp - 0x29c], 0x10325476
call fcn.004074d0
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00407de0
mov esi, eax
lea ecx, [edi + 0x7d0]
cmp ecx, esi
je 0x44b2d8
call fcn.00406e40
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi + 0x7d0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x7e0], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x178]
cmp edx, 8
jb 0x44b318
mov ecx, dword [ebp - 0x18c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44b30e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b91a
push edx
push ecx
call fcn.005c24d6
add esp, 8
push 0
call fcn.006dbbb5
add esp, 4
mov dword [ebp - 0x2c0], eax
lea eax, [ebp - 0x2c0]
mov dword [ebp - 0x2bc], edx
push eax
lea eax, [ebp - 0x1c8]
push eax
call fcn.006dbea8
push 0x40
lea eax, [ebp - 0x58]
push 0
push eax
call fcn.006ce4d0
movzx eax, word [ebp - 0x1bc]
add esp, 0x14
push eax
mov eax, dword [ebp - 0x1b8]
inc eax
movzx eax, ax
push eax
mov eax, dword [ebp - 0x1b4]
add eax, 0x76c
movzx eax, ax
push eax
lea eax, [ebp - 0x58]
push str._04d__02d__02d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x14
mov dword [ebp - 0xbc], 0
xor eax, eax
mov dword [ebp - 0xb8], 7
lea ecx, [ebp - 0x58]
mov word [ebp - 0xcc], ax
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44b3b0
sub ecx, edx
lea eax, [ebp - 0x58]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xcc]
call fcn.0040ea60
mov byte [ebp - 4], 0x40
lea edx, [ebp - 0xcc]
cmp dword [ebp - 0xb8], 8
cmovae edx, dword [ebp - 0xcc]
mov ecx, edx
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44b3f0
sub ecx, esi
sar ecx, 1
push ecx
push edx
mov ecx, 0x181cdb8
call fcn.0040ea60
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0xb8]
cmp edx, 8
jb 0x44b44f
mov ecx, dword [ebp - 0xcc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44b445
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b91f
push edx
push ecx
call fcn.005c24d6
add esp, 8
push 0x2c8
lea eax, [edi + 0xe8]
push 0
push eax
call fcn.006ce4d0
add esp, 0xc
lea eax, [edi + 0x3b0]
mov dword [ebp - 0x2ac], eax
push 0x208
push 0
push eax
call fcn.006ce4d0
mov eax, dword fs:[0x30]
add esp, 0xc
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
movzx edx, word [eax + 0x2c]
mov ecx, 0x811c9dc5
mov esi, dword [eax + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x2bc], ecx
xor edi, edi
mov dword [ebp - 0x2b0], eax
lea ecx, [edx + esi]
inc edx
shr edx, 1
cmp esi, ecx
cmova edx, edi
mov dword [ebp - 0x2d4], edx
test edx, edx
je 0x44b501
mov eax, dword [ebp - 0x2bc]
mov dl, byte [esi]
lea ecx, [edx - 0x41]
cmp cl, 0x19
movsx ecx, dl
ja 0x44b4d5
or ecx, 0x20
xor ecx, eax
inc edi
imul eax, ecx, 0x1000193
add esi, 2
cmp edi, dword [ebp - 0x2d4]
jne 0x44b4c5
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 0xa3e6f6c3
mov eax, dword [ebp - 0x2b0]
je 0x44b505
mov eax, dword [eax]
jmp 0x44b48d
mov esi, dword [eax + 0x18]
mov eax, dword [0x181d0a4]
mov dword [ebp - 0x2d4], esi
test eax, eax
jne 0x44b5e7
test esi, esi
je 0x44b5e0
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x2b0], eax
xor eax, eax
mov dword [ebp - 0x2b0], ecx
cmp ecx, esi
je 0x44b5e2
mov dword [ebp - 0x2bc], eax
cmp dword [ecx + 0x18], eax
je 0x44b5e0
mov edi, dword [ecx + 0x20]
add edi, esi
nop word [eax + eax]
mov edx, dword [edi]
add edx, esi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x44b59a
lea eax, [ecx - 0x41]
cmp al, 0x19
movsx eax, cl
ja 0x44b57d
or eax, 0x20
mov cl, byte [edx]
xor eax, esi
imul esi, eax, 0x1000193
inc edx
test cl, cl
jne 0x44b570
cmp esi, 0xeb3e491b
je 0x44b5b7
mov eax, dword [ebp - 0x2bc]
mov ecx, dword [ebp - 0x2b0]
inc eax
add edi, 4
mov dword [ebp - 0x2bc], eax
cmp eax, dword [ecx + 0x18]
je 0x44b5e0
mov esi, dword [ebp - 0x2d4]
jmp 0x44b560
mov esi, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2bc]
mov edx, dword [ebp - 0x2d4]
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 0x44b5e2
xor eax, eax
mov dword [0x181d0a4], eax
push 0x104
push dword [ebp - 0x2ac]
push 0
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
movzx edx, word [eax + 0x2c]
mov ecx, 0x811c9dc5
mov esi, dword [eax + 0x30]
and edx, 0xfffffffe
mov dword [ebp - 0x2bc], ecx
xor edi, edi
mov dword [ebp - 0x2d4], eax
lea ecx, [edx + esi]
inc edx
shr edx, 1
cmp esi, ecx
cmova edx, edi
mov dword [ebp - 0x2b0], edx
test edx, edx
je 0x44b67c
mov eax, dword [ebp - 0x2bc]
nop word [eax + eax]
mov dl, byte [esi]
lea ecx, [edx - 0x41]
cmp cl, 0x19
movsx ecx, dl
ja 0x44b650
or ecx, 0x20
xor ecx, eax
inc edi
imul eax, ecx, 0x1000193
add esi, 2
cmp edi, dword [ebp - 0x2b0]
jne 0x44b640
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 0x8ec4c73b
mov eax, dword [ebp - 0x2d4]
je 0x44b680
mov eax, dword [eax]
jmp 0x44b602
mov esi, dword [eax + 0x18]
mov eax, dword [0x181d0a8]
mov dword [ebp - 0x2b0], esi
test eax, eax
jne 0x44b75c
test esi, esi
je 0x44b755
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + esi + 0x78]
mov eax, dword [eax + esi + 0x7c]
add ecx, esi
mov dword [ebp - 0x2d4], eax
xor eax, eax
mov dword [ebp - 0x2d4], ecx
cmp ecx, esi
je 0x44b757
mov dword [ebp - 0x2bc], eax
cmp dword [ecx + 0x18], eax
je 0x44b755
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 0x44b70f
lea eax, [ecx - 0x41]
cmp al, 0x19
movsx eax, cl
ja 0x44b6f2
or eax, 0x20
mov cl, byte [edx]
xor eax, esi
imul esi, eax, 0x1000193
inc edx
test cl, cl
jne 0x44b6e5
cmp esi, 0xf1cc2f70
je 0x44b72c
mov eax, dword [ebp - 0x2bc]
mov ecx, dword [ebp - 0x2d4]
inc eax
add edi, 4
mov dword [ebp - 0x2bc], eax
cmp eax, dword [ecx + 0x18]
je 0x44b755
mov esi, dword [ebp - 0x2b0]
jmp 0x44b6d5
mov esi, dword [ebp - 0x2d4]
mov ecx, dword [ebp - 0x2bc]
mov edx, dword [ebp - 0x2b0]
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 0x44b757
xor eax, eax
mov dword [0x181d0a8], eax
push dword [ebp - 0x2ac]
call eax
mov esi, dword [ebp - 0x2e4]
lea edx, [ebp - 0x2b0]
xor edi, edi
lea ecx, [ebp - 0x2d4]
mov dword [ebp - 0x2d4], edi
mov dword [ebp - 0x2b0], edi
mov dword [esi + 0xe54], 0
mov dword [esi + 0xe58], 0
mov dword [esi + 0xe5c], 0
mov dword [esi + 0xe60], 0
mov dword [esi + 0xe78], 0
mov dword [esi + 0xe64], 0
mov dword [esi + 0xe7c], 0
mov dword [esi + 0xe70], 0
mov dword [esi + 0xe6c], 0
mov dword [esi + 0x860], 0
mov dword [esi + 0xf30], 0
call fcn.004864c0
cmp dword [ebp - 0x2d4], 5
jne 0x44b815
mov eax, dword [ebp - 0x2b0]
cmp eax, 1
je 0x44b810
cmp eax, 2
jne 0x44b815
mov edi, 1
mov edx, dword [ebp - 0x70]
mov dword [esi + 0x6b4], edi
cmp edx, 0x10
jb 0x44b852
mov ecx, dword [ebp - 0x84]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44b848
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b924
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
cmp edx, 0x10
jb 0x44b8a1
mov ecx, dword [ebp - 0xe4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44b897
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b929
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov edx, dword [ebp - 0x190]
cmp edx, 0x10
jb 0x44b8d7
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44b8cd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44b92e
push edx
push ecx
call fcn.005c24d6
add esp, 8
mov eax, esi
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.005c22ca
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
call fcn.006d1429
int3