Function at 0x4b9c30
Capabilities:
Encode data using xor
Hash data using fnv
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x878
mov eax, dword [0x4d900c]
xor eax, esp
mov dword [esp + 0x874], eax
push esi
push edi
mov edi, dword [0x4d9880]
mov dword [esp + 0xe0], ecx
xor ecx, ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
cmp byte [0x4d97c7], cl
je 0x4bc02c
mov esi, dword [eax + 0x20]
mov dword [esp + 0x2c], eax
add esi, edi
mov dword [esp + 0x24], ecx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xafaaa7a5
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4b9cad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4b9c90
cmp edx, 0x94aa713a
je 0x4b9cb6
inc dword [esp + 0x24]
add esi, 4
jmp 0x4b9c80
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
push dword [esp + 0xe0]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
mov dword [esp + 0x24], eax
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0xc3726add
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4b9d2d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4b9d10
cmp edx, 0x41b867e8
je 0x4b9d36
inc dword [esp + 0x14]
add esi, 4
jmp 0x4b9d00
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push 0x1db
push 0x35c
mov eax, dword [edx + 0x24]
push dword [esp + 0xe8]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov dword [esp + 0x1c], eax
xor edi, edi
mov eax, dword [0x4d9880]
mov ecx, dword [eax + 0x3c]
mov ecx, dword [ecx + eax + 0x78]
add ecx, eax
mov dword [esp + 0x2c], ecx
mov esi, dword [ecx + 0x20]
add esi, eax
mov ecx, dword [esi]
mov edx, 0x28425dd9
add ecx, eax
mov al, byte [ecx]
inc ecx
test al, al
je 0x4b9db0
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4b9d93
cmp edx, 0xbf65bffe
je 0x4b9dbb
mov eax, dword [0x4d9880]
inc edi
add esi, 4
jmp 0x4b9d83
mov esi, dword [esp + 0x2c]
mov edx, dword [0x4d9880]
push dword [esp + 0x1c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
mov esi, dword [esp + 0x28]
push esi
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov dword [esp + 0x30], eax
lea eax, [esp + 0x6f0]
push eax
push esi
mov dword [esp + 0x6f8], 0
call dword [sym.imp.gdiplus.dll_GdipCreateFromHDC]
mov ecx, dword [esp + 0x6f0]
xorps xmm0, xmm0
mov dword [esp + 0x6fc], eax
lea eax, [esp + 0x224]
mov dword [esp + 0x6f8], ecx
lea ecx, [esp + 0x838]
push eax
movq qword [esp + 0x83c], xmm0
mov dword [esp + 0x844], 0
mov dword [esp + 0x228], 0xff17181c
call fcn.004b7980
lea eax, [esp + 0x228]
mov dword [esp + 0x758], 0
xorps xmm0, xmm0
mov dword [esp + 0x228], 0xff1b1d22
push eax
lea ecx, [esp + 0x754]
movq qword [esp + 0x754], xmm0
call fcn.004b7980
lea eax, [esp + 0x22c]
mov dword [esp + 0x744], 0
xorps xmm0, xmm0
mov dword [esp + 0x22c], 0xff202328
push eax
lea ecx, [esp + 0x740]
movq qword [esp + 0x740], xmm0
call fcn.004b7980
lea eax, [esp + 0x230]
mov dword [esp + 0x764], 0
xorps xmm0, xmm0
mov dword [esp + 0x230], 0xffcccccc
push eax
lea ecx, [esp + 0x760]
movq qword [esp + 0x760], xmm0
call fcn.004b7980
lea eax, [esp + 0x234]
mov dword [esp + 0x784], 0
xorps xmm0, xmm0
mov dword [esp + 0x234], 0xff636363
push eax
lea ecx, [esp + 0x780]
movq qword [esp + 0x780], xmm0
call fcn.004b7980
lea eax, [esp + 0x238]
mov dword [esp + 0x728], 0
xorps xmm0, xmm0
mov dword [esp + 0x238], 0xffffc95d
push eax
lea ecx, [esp + 0x724]
movq qword [esp + 0x724], xmm0
call fcn.004b7980
lea eax, [esp + 0x220]
mov dword [esp + 0x7b8], 0
xorps xmm0, xmm0
mov dword [esp + 0x220], 0xff15161a
push eax
lea ecx, [esp + 0x7b4]
movq qword [esp + 0x7b4], xmm0
call fcn.004b7980
xorps xmm0, xmm0
mov dword [esp + 0x804], 0
movq qword [esp + 0x7fc], xmm0
lea eax, [esp + 0x21c]
mov dword [esp + 0x21c], 0xfff4f4f4
push eax
lea ecx, [esp + 0x800]
call fcn.004b7980
lea eax, [esp + 0x218]
mov dword [esp + 0x7ac], 0
xorps xmm0, xmm0
mov dword [esp + 0x218], 0xffbe974a
push eax
lea ecx, [esp + 0x7a8]
movq qword [esp + 0x7a8], xmm0
call fcn.004b7980
lea eax, [esp + 0x1b0]
mov dword [esp + 0x7a0], 0
xorps xmm0, xmm0
mov dword [esp + 0x1b0], 0xffffde72
push eax
lea ecx, [esp + 0x79c]
movq qword [esp + 0x79c], xmm0
call fcn.004b7980
xorps xmm0, xmm0
mov word [esp + 0x1ec], 0x6f5e
movlpd qword [esp + 0x72c], xmm0
xor ecx, ecx
movaps xmm0, xmmword [0x4d5e70]
movups xmmword [esp + 0x1dc], xmm0
mov byte [esp + 0x1ee], 0
nop dword [eax]
nop word [eax + eax]
mov al, byte [esp + 0x1dc]
xor byte [esp + ecx + 0x1dd], al
inc ecx
cmp ecx, 0x11
jb 0x4ba070
sub esp, 0x18
mov byte [esp + 0x206], 0
mov esi, esp
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x1f5]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ba0a2
sub ecx, edx
lea eax, [esp + 0x1f5]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x368]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x72c]
push ecx
push 0
push eax
call dword [sym.imp.gdiplus.dll_GdipCreateFontFamilyFromName]
lea ecx, [esp + 0x350]
mov dword [esp + 0x730], eax
call fcn.004b6490
mov esi, dword [sym.imp.gdiplus.dll_GdipCreateFont]
lea eax, [esp + 0x6ec]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41680000
push dword [esp + 0x73c]
mov dword [esp + 0x700], 0
call esi
mov dword [esp + 0x7f0], eax
mov eax, dword [esp + 0x6ec]
mov dword [esp + 0x7ec], eax
lea eax, [esp + 0x6e8]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41880000
push dword [esp + 0x73c]
mov dword [esp + 0x6fc], 0
call esi
mov dword [esp + 0x74c], eax
mov eax, dword [esp + 0x6e8]
mov dword [esp + 0x748], eax
lea eax, [esp + 0x6e4]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41940000
push dword [esp + 0x73c]
mov dword [esp + 0x6f8], 0
call esi
mov dword [esp + 0x76c], eax
mov eax, dword [esp + 0x6e4]
mov dword [esp + 0x768], eax
lea eax, [esp + 0x6dc]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x419c0000
push dword [esp + 0x73c]
mov dword [esp + 0x6f0], 0
call esi
mov eax, dword [esp + 0x6dc]
mov dword [esp + 0xe4], eax
lea eax, [esp + 0x6d8]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41b80000
push dword [esp + 0x73c]
mov dword [esp + 0x6ec], 0
call esi
mov dword [esp + 0x794], eax
xorps xmm0, xmm0
mov eax, dword [esp + 0x6d8]
mov dword [esp + 0x790], eax
movlpd qword [esp + 0x708], xmm0
lea eax, [esp + 0x708]
push eax
push 0
push 0
call dword [sym.imp.gdiplus.dll_GdipCreateStringFormat]
push 1
push dword [esp + 0x70c]
mov dword [esp + 0x714], eax
call dword [sym.imp.gdiplus.dll_GdipSetStringFormatAlign]
mov ecx, dword [esp + 0x70c]
test eax, eax
push 0x1f6
push 0x35e
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [esp + 0x84c]
cmovne ecx, eax
push dword [esp + 0x70c]
mov dword [esp + 0x724], ecx
call dword [sym.imp.gdiplus.dll_GdipFillRectangleI]
mov ecx, dword [esp + 0x6fc]
test eax, eax
push 4
push dword [esp + 0x6fc]
cmovne ecx, eax
mov dword [esp + 0x704], ecx
call dword [sym.imp.gdiplus.dll_GdipSetSmoothingMode]
mov ecx, dword [esp + 0x6fc]
test eax, eax
push 4
push dword [esp + 0x6fc]
cmovne ecx, eax
mov dword [esp + 0x704], ecx
call dword [sym.imp.gdiplus.dll_GdipSetTextRenderingHint]
mov ecx, dword [esp + 0x6fc]
test eax, eax
push 2
push dword [esp + 0x6fc]
cmovne ecx, eax
mov dword [esp + 0x704], ecx
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
cmp dword [0x4d97c0], 2
mov dword [esp + 0x6fc], ecx
jne 0x4ba344
mov eax, dword [0x4d9800]
test eax, eax
je 0x4ba31e
mov eax, dword [eax + 4]
jmp 0x4ba320
xor eax, eax
mov edi, dword [sym.imp.gdiplus.dll_GdipDrawImageI]
push 0x14
push 0x334
push eax
push dword [esp + 0x704]
call edi
test eax, eax
je 0x4ba37e
mov dword [esp + 0x6fc], eax
jmp 0x4ba37e
mov eax, dword [0x4d984c]
test eax, eax
je 0x4ba352
mov eax, dword [eax + 4]
jmp 0x4ba354
xor eax, eax
mov edi, dword [sym.imp.gdiplus.dll_GdipDrawImageI]
push 0x14
push 0x334
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
cmp dword [0x4d97c0], 3
jne 0x4ba3b5
mov eax, dword [0x4d9814]
test eax, eax
je 0x4ba395
mov eax, dword [eax + 4]
jmp 0x4ba397
xor eax, eax
push 0x22
push 0x316
push eax
push dword [esp + 0x704]
call edi
test eax, eax
je 0x4ba3e9
mov dword [esp + 0x6fc], eax
jmp 0x4ba3e9
mov eax, dword [0x4d97d8]
test eax, eax
je 0x4ba3c3
mov eax, dword [eax + 4]
jmp 0x4ba3c5
xor eax, eax
push 0x22
push 0x316
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
movaps xmm0, xmmword [0x4d3080]
lea edx, [esp + 0x750]
sub esp, 0x10
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
mov eax, dword [0x4d982c]
add esp, 0x18
test eax, eax
je 0x4ba423
mov eax, dword [eax + 4]
jmp 0x4ba425
xor eax, eax
push 0x19
push 0x20
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
lea edx, [esp + 0x750]
movaps xmm0, xmmword [0x4d30b0]
test eax, eax
cmovne ecx, eax
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x70c], ecx
lea ecx, [esp + 0x708]
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d2ff0]
lea ecx, [esp + 0x710]
add esp, 0x18
sub esp, 0x10
cmp dword [0x4d97c0], 5
mov eax, esp
push 6
movups xmmword [eax], xmm0
jne 0x4ba4a1
push 0xffffde72
lea edx, [esp + 0x7b0]
jmp 0x4ba4ad
push 0xffffc95d
lea edx, [esp + 0x738]
call fcn.004b9a30
mov eax, dword [0x4d9818]
add esp, 0x18
test eax, eax
je 0x4ba4c3
mov eax, dword [eax + 4]
jmp 0x4ba4c5
xor eax, eax
push 0x20
push 0x6c
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
lea eax, [esp + 0x310]
mov dword [esp + 0x6fc], ecx
mov ecx, 0x4d9098
push eax
call fcn.004b5de0
mov ecx, 0x4d9098
mov esi, dword [eax]
lea eax, [esp + 0x314]
push eax
call fcn.004b5e00
lea ecx, [esp + 0x1af]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x38c]
call fcn.004b6e30
mov dword [esp + 0x2c], eax
mov cl, 0x7c
mov byte [esp + 0x108], 0x35
mov al, 0x4d
xor cl, byte [esp + 0x108]
mov ch, 0x51
mov byte [esp + 0x109], cl
sub esp, 0x18
mov cl, byte [esp + 0x120]
mov dl, 0x5b
xor al, cl
mov byte [esp + 0x3b], 0x15
mov byte [esp + 0x125], al
xor ch, cl
mov al, byte [esp + 0x3b]
mov dh, 0x50
mov ah, 0xf
mov byte [esp + 0x123], ch
xor dl, cl
mov byte [esp + 0x128], 0
xor dh, cl
mov byte [esp + 0x122], dl
xor ah, cl
mov byte [esp + 0x124], dh
xor al, cl
mov byte [esp + 0x126], ah
mov esi, esp
mov byte [esp + 0x127], al
mov ecx, esi
mov byte [esp + 0x128], 0
call fcn.004b7490
lea ecx, [esp + 0x121]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ba5b5
sub ecx, edx
lea eax, [esp + 0x121]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x380]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
mov edx, eax
lea esi, [edx + 2]
nop dword [eax]
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x4ba5f0
mov ecx, dword [esp + 0x2c]
sub edx, esi
sar edx, 1
push edx
push eax
push 0
call fcn.004bfd90
push eax
lea ecx, [esp + 0x868]
call fcn.004bf8c0
lea ecx, [esp + 0x368]
call fcn.004b6490
lea ecx, [esp + 0x380]
call fcn.004b6490
cmp dword [0x4d97c0], 4
lea ecx, [esp + 0x864]
jne 0x4ba667
mov dword [esp + 0x290], 0x438e0000
lea esi, [esp + 0x290]
mov dword [esp + 0x294], 0x42040000
lea eax, [esp + 0x7fc]
jmp 0x4ba68b
mov dword [esp + 0x2e8], 0x438e0000
lea esi, [esp + 0x2e8]
mov dword [esp + 0x2ec], 0x42040000
lea eax, [esp + 0x75c]
mov dword [esp + 0x14], eax
call fcn.004b5cf0
push dword [esp + 0x14]
lea ecx, [esp + 0x70c]
push ecx
push esi
lea ecx, [esp + 0x7f8]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
movaps xmm0, xmmword [0x4d3090]
lea edx, [esp + 0x750]
sub esp, 0x10
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d2fe0]
lea edx, [esp + 0x774]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 0x14
push 0xffcccccc
movups xmmword [eax], xmm0
call fcn.004b9a30
add esp, 0x18
cmp dword [0x4d97c0], 0x3f3
jne 0x4ba751
mov eax, dword [0x4d97fc]
test eax, eax
je 0x4ba727
mov eax, dword [eax + 4]
jmp 0x4ba729
xor eax, eax
mov esi, dword [sym.imp.gdiplus.dll_GdipDrawImageRectI]
push 0x1a
push 0x1a
push 0x22
push 0x204
push eax
push dword [esp + 0x70c]
call esi
test eax, eax
je 0x4ba78f
mov dword [esp + 0x6fc], eax
jmp 0x4ba78f
mov eax, dword [0x4d9854]
test eax, eax
je 0x4ba75f
mov eax, dword [eax + 4]
jmp 0x4ba761
xor eax, eax
mov esi, dword [sym.imp.gdiplus.dll_GdipDrawImageRectI]
push 0x1a
push 0x1a
push 0x22
push 0x204
push eax
push dword [esp + 0x70c]
call esi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
cmp dword [0x4d97c0], 0x3f4
jne 0x4ba7cd
mov eax, dword [0x4d9828]
test eax, eax
je 0x4ba7a9
mov eax, dword [eax + 4]
jmp 0x4ba7ab
xor eax, eax
push 0x1a
push 0x1a
push 0x22
push 0x22f
push eax
push dword [esp + 0x70c]
call esi
test eax, eax
je 0x4ba805
mov dword [esp + 0x6fc], eax
jmp 0x4ba805
mov eax, dword [0x4d97e8]
test eax, eax
je 0x4ba7db
mov eax, dword [eax + 4]
jmp 0x4ba7dd
xor eax, eax
push 0x1a
push 0x1a
push 0x22
push 0x22f
push eax
push dword [esp + 0x70c]
call esi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
cmp dword [0x4d97c0], 0x3f5
jne 0x4ba843
mov eax, dword [0x4d985c]
test eax, eax
je 0x4ba81f
mov eax, dword [eax + 4]
jmp 0x4ba821
xor eax, eax
push 0x1a
push 0x1a
push 0x22
push 0x25a
push eax
push dword [esp + 0x70c]
call esi
test eax, eax
je 0x4ba87b
mov dword [esp + 0x6fc], eax
jmp 0x4ba87b
mov eax, dword [0x4d97d4]
test eax, eax
je 0x4ba851
mov eax, dword [eax + 4]
jmp 0x4ba853
xor eax, eax
push 0x1a
push 0x1a
push 0x22
push 0x25a
push eax
push dword [esp + 0x70c]
call esi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
sub esp, 0x10
lea edx, [esp + 0x74c]
cmp byte [0x4d9019], 0
lea ecx, [esp + 0x708]
mov eax, esp
push 6
push 0xff202128
je 0x4ba8a7
movaps xmm0, xmmword [0x4d3010]
jmp 0x4ba8ae
movaps xmm0, xmmword [0x4d3000]
movups xmmword [eax], xmm0
call fcn.004b9a30
mov eax, dword [0x4d9844]
add esp, 0x18
test eax, eax
je 0x4ba8c7
mov eax, dword [eax + 4]
jmp 0x4ba8c9
xor eax, eax
push 0x24
push 0x29f
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d97f4]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4ba8fb
mov eax, dword [eax + 4]
jmp 0x4ba8fd
xor eax, eax
push 0x17
push 0x17
push 0x24
push 0x2cc
push eax
push dword [esp + 0x70c]
call esi
mov ecx, dword [esp + 0x6fc]
lea edx, [esp + 0x750]
movaps xmm0, xmmword [0x4d30a0]
test eax, eax
cmovne ecx, eax
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x70c], ecx
lea ecx, [esp + 0x708]
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
xor eax, eax
add esp, 0x18
cmp byte [0x4d9019], al
je 0x4baa1e
mov dword [esp + 0x298], 0x43d70000
mov cl, 0x5f
mov dword [esp + 0x29c], 0x42c00000
mov dword [esp + 0x178], 0x333a0c5f
mov dword [esp + 0x17c], 0x7f2b3c3a
mov dword [esp + 0x180], 0x3e187f1e
mov word [esp + 0x184], 0x3a32
mov byte [esp + 0x186], al
nop dword [eax]
xor byte [esp + eax + 0x179], cl
inc eax
cmp eax, 0xd
jae 0x4ba9c6
mov cl, byte [esp + 0x178]
jmp 0x4ba9b0
sub esp, 0x18
mov byte [esp + 0x19e], 0
mov esi, esp
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x191]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ba9e4
sub ecx, edx
lea eax, [esp + 0x191]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x3b0]
call fcn.004c00f0
mov ecx, eax
lea esi, [esp + 0x3b0]
lea eax, [esp + 0x2b0]
jmp 0x4baad9
mov dword [esp + 0x2a0], 0x43d70000
mov cl, 0x43
mov dword [esp + 0x2a4], 0x42c00000
mov dword [esp + 0x188], 0xa2b88143
mov dword [esp + 0x18c], 0xb1abb3a6
mov dword [esp + 0x190], 0xa0ab63a6
mov word [esp + 0x194], 0xb0b3
mov byte [esp + 0x196], 0
nop dword [eax]
xor byte [esp + eax + 0x189], cl
inc eax
cmp eax, 0xd
jae 0x4baa86
mov cl, byte [esp + 0x188]
jmp 0x4baa70
sub esp, 0x18
mov byte [esp + 0x1ae], 0
mov esi, esp
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x1a1]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4baaa4
sub ecx, edx
lea eax, [esp + 0x1a1]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x3c8]
call fcn.004c0160
mov ecx, eax
lea esi, [esp + 0x3c8]
lea eax, [esp + 0x2b8]
add esp, 0x18
mov dword [esp + 0x14], eax
call fcn.004b5cf0
lea ecx, [esp + 0x75c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push dword [esp + 0x1c]
lea ecx, [esp + 0x774]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
mov ecx, esi
call fcn.004b6490
movaps xmm0, xmmword [0x4d37a0]
lea edx, [esp + 0x73c]
sub esp, 0x10
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff202128
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d37b0]
lea edx, [esp + 0x754]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff202128
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d37c0]
lea edx, [esp + 0x754]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff202128
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d37d0]
lea edx, [esp + 0x768]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d37e0]
lea edx, [esp + 0x768]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d37f0]
lea edx, [esp + 0x768]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 5
push 0xff1b1d22
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3050]
lea edx, [esp + 0x754]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 6
push 0xff202128
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3060]
add esp, 8
mov eax, esp
lea edx, [esp + 0x74c]
push 6
push 0xff202128
lea ecx, [esp + 0x710]
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3070]
lea edx, [esp + 0x754]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 6
push 0xff202128
movups xmmword [eax], xmm0
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3020]
lea edx, [esp + 0x738]
add esp, 8
lea ecx, [esp + 0x708]
mov eax, esp
push 6
push 0xffffc95d
movups xmmword [eax], xmm0
call fcn.004b9a30
mov eax, dword [0x4d901c]
add esp, 0x18
cmp eax, 0xffffffff
jne 0x4bae34
mov cl, 0x45
mov byte [esp + 0xf0], 0x2c
mov dh, cl
mov byte [esp + 0x23], 0x41
xor cl, byte [esp + 0xf0]
mov al, 0x60
xor al, byte [esp + 0xf0]
mov ah, 0x49
mov byte [esp + 0xf1], al
mov ch, 0x78
mov al, byte [esp + 0x23]
sub esp, 0x18
mov byte [esp + 0x10a], cl
mov dl, 0x4a
mov cl, byte [esp + 0x108]
mov esi, esp
xor al, cl
mov byte [esp + 0x3a], ah
mov byte [esp + 0x10f], al
xor ch, cl
mov al, byte [esp + 0x3a]
xor dl, cl
xor ah, cl
mov byte [esp + 0x10d], ch
xor dh, cl
mov byte [esp + 0x111], 0
xor al, cl
mov dword [esp + 0x2c0], 0x43200000
mov ecx, esi
mov dword [esp + 0x2c4], 0x43a38000
mov byte [esp + 0x10b], dl
mov byte [esp + 0x10c], ah
mov byte [esp + 0x10e], dh
mov byte [esp + 0x110], al
mov byte [esp + 0x111], 0
call fcn.004b7490
lea ecx, [esp + 0x109]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bad80
sub ecx, edx
lea eax, [esp + 0x109]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x3e0]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x77c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2b0]
push ecx
lea ecx, [esp + 0x754]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x3c8]
call fcn.004b6490
cmp dword [0x4d97c0], 0x3e9
push 0x28
push 0xe6
push 0x184
push 0x22
jne 0x4bae28
lea ecx, [esp + 0x6a8]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7a8]
mov ecx, esp
push 6
push 0xffffde72
jmp 0x4bb053
lea ecx, [esp + 0x6b8]
jmp 0x4bb03b
movss xmm2, dword [0x4d1688]
movss xmm1, dword [0x4d1680]
cmp eax, 1
jge 0x4baf9e
lea ecx, [esp + 0x348]
call fcn.004b7840
push 0x45
lea ecx, [esp + 0x48]
mov dword [esp + 0x30], eax
mov byte [esp + 0x48], 0x30
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x48]
mov byte [esp + 0x49], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x48]
mov byte [esp + 0x4a], al
call fcn.004b51f0
push 0x65
lea ecx, [esp + 0x48]
mov byte [esp + 0x4b], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x48]
mov byte [esp + 0x4c], al
call fcn.004b51f0
mov byte [esp + 0x49], al
xor esi, esi
mov byte [esp + 0x4a], 0
push esi
lea ecx, [esp + 0x49]
call fcn.004b5210
lea ecx, [esp + 0x44]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x49]
mov byte [esp + 0x26], al
call fcn.004b5210
mov cl, byte [esp + 0x22]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x4baeb4
push 5
lea ecx, [esp + 0x49]
call fcn.004b5210
lea ecx, [esp + 0x45]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004b60a0
lea ecx, [esp + 0x3f8]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x77c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push dword [esp + 0x34]
lea ecx, [esp + 0x754]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x3e0]
call fcn.004b5d40
cmp dword [0x4d97c0], 0x3e9
push 0x28
push 0xe6
push 0x184
push 0x22
jne 0x4baf92
lea ecx, [esp + 0x628]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7b4]
mov ecx, esp
push 6
push 0xffbe974a
jmp 0x4bb053
lea ecx, [esp + 0x638]
jmp 0x4bb03b
lea ecx, [esp + 0x328]
call fcn.004b7840
mov edx, dword [0x4d901c]
lea ecx, [esp + 0x3f8]
mov esi, eax
call fcn.004b93d0
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x77c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push esi
lea ecx, [esp + 0x754]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x3f8]
call fcn.004b5d40
cmp dword [0x4d97c0], 0x3e9
push 0x28
push 0xe6
push 0x184
push 0x22
jne 0x4bb034
lea ecx, [esp + 0x648]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7a8]
mov ecx, esp
push 6
push 0xffffde72
jmp 0x4bb053
lea ecx, [esp + 0x6c8]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x730]
mov ecx, esp
push 6
push 0xffffc95d
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
lea ecx, [esp + 0x710]
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3030]
lea edx, [esp + 0x738]
add esp, 0x18
lea ecx, [esp + 0x6f8]
sub esp, 0x10
mov eax, esp
push 6
push 0xffffc95d
movups xmmword [eax], xmm0
call fcn.004b9a30
movss xmm2, dword [0x4d1688]
lea ecx, [esp + 0x348]
movss xmm1, dword [0x4d168c]
add esp, 0x18
call fcn.004b7840
push 0x45
lea ecx, [esp + 0x50]
mov dword [esp + 0x30], eax
mov byte [esp + 0x50], 0x6c
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x50]
mov byte [esp + 0x51], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x50]
mov byte [esp + 0x52], al
call fcn.004b51f0
push 0x65
lea ecx, [esp + 0x50]
mov byte [esp + 0x53], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x50]
mov byte [esp + 0x54], al
call fcn.004b51f0
mov byte [esp + 0x51], al
xor esi, esi
mov byte [esp + 0x52], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x51]
call fcn.004b5210
lea ecx, [esp + 0x4c]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x51]
mov byte [esp + 0x26], al
call fcn.004b5210
mov cl, byte [esp + 0x22]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x4bb110
push 5
lea ecx, [esp + 0x51]
call fcn.004b5210
lea ecx, [esp + 0x4d]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004b60a0
lea ecx, [esp + 0x608]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x77c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push dword [esp + 0x34]
lea ecx, [esp + 0x754]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x5f0]
call fcn.004b5d40
cmp dword [0x4d97c0], 0x3ea
push 0x28
push 0xe6
push 0x184
push 0x13b
jne 0x4bb1ee
lea ecx, [esp + 0x678]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7b4]
mov ecx, esp
push 6
push 0xffbe974a
jmp 0x4bb20d
lea ecx, [esp + 0x688]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x730]
mov ecx, esp
push 6
push 0xffffc95d
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
lea ecx, [esp + 0x710]
call fcn.004b9a30
movaps xmm0, xmmword [0x4d3040]
lea edx, [esp + 0x738]
add esp, 0x18
lea ecx, [esp + 0x6f8]
sub esp, 0x10
mov eax, esp
push 6
push 0xffffc95d
movups xmmword [eax], xmm0
call fcn.004b9a30
movss xmm2, dword [0x4d1688]
lea ecx, [esp + 0x350]
movss xmm1, dword [0x4d1698]
add esp, 0x18
call fcn.004b7840
push 0x45
lea ecx, [esp + 0x40]
mov dword [esp + 0x30], eax
mov byte [esp + 0x40], 0x5a
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x40]
mov byte [esp + 0x41], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x40]
mov byte [esp + 0x42], al
call fcn.004b51f0
push 0x65
lea ecx, [esp + 0x40]
mov byte [esp + 0x43], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x40]
mov byte [esp + 0x44], al
call fcn.004b51f0
mov byte [esp + 0x41], al
xor esi, esi
mov byte [esp + 0x42], 0
push esi
lea ecx, [esp + 0x41]
call fcn.004b5210
lea ecx, [esp + 0x3c]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x41]
mov byte [esp + 0x26], al
call fcn.004b5210
mov cl, byte [esp + 0x22]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x4bb2c5
push 5
lea ecx, [esp + 0x41]
call fcn.004b5210
lea ecx, [esp + 0x3d]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004b60a0
lea ecx, [esp + 0x428]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x77c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push dword [esp + 0x34]
lea ecx, [esp + 0x754]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x410]
call fcn.004b5d40
cmp dword [0x4d97c0], 0x3eb
push 0x28
push 0xe6
push 0x184
push 0x254
jne 0x4bb3a3
lea ecx, [esp + 0x658]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7b4]
mov ecx, esp
push 6
push 0xffbe974a
jmp 0x4bb3c2
lea ecx, [esp + 0x618]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x730]
mov ecx, esp
push 6
push 0xffffc95d
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
lea ecx, [esp + 0x710]
call fcn.004b9a30
mov eax, dword [0x4d97ec]
add esp, 0x18
test eax, eax
je 0x4bb3e5
mov eax, dword [eax + 4]
jmp 0x4bb3e7
xor eax, eax
push 0xb9
push 0x6e
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9838]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb419
mov eax, dword [eax + 4]
jmp 0x4bb41b
xor eax, eax
push 0xb9
push 0x182
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9824]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb450
mov eax, dword [eax + 4]
jmp 0x4bb452
xor eax, eax
push 0xb9
push 0x2a1
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
mov dl, 0x54
mov byte [esp + 0x135], 0
cmovne ecx, eax
mov dword [esp + 0x2b0], 0x43140000
mov dword [esp + 0x6fc], ecx
sub esp, 0x18
mov ch, 0x27
mov dword [esp + 0x2cc], 0x43870000
mov cl, 0x52
mov byte [esp + 0x148], ch
xor cl, ch
mov byte [esp + 0x14d], 0
mov al, 0x75
mov byte [esp + 0x14a], cl
mov ah, 0x53
xor al, ch
xor dl, ch
mov byte [esp + 0x149], al
xor ah, ch
mov byte [esp + 0x14b], dl
mov esi, esp
mov byte [esp + 0x14c], ah
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x149]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb4f0
sub ecx, edx
lea eax, [esp + 0x149]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x440]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x75c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2b8]
push ecx
lea ecx, [esp + 0x79c]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x428]
call fcn.004b6490
mov ch, 0x57
mov byte [esp + 0x13d], 0
mov cl, 0x27
mov byte [esp + 0x138], ch
xor cl, ch
mov dword [esp + 0x2b8], 0x43d68000
sub esp, 0x18
mov byte [esp + 0x152], cl
mov al, 0x16
mov dword [esp + 0x2d4], 0x43870000
mov dl, 0x32
mov byte [esp + 0x155], 0
mov ah, 0x2f
xor al, ch
xor dl, ch
mov byte [esp + 0x151], al
xor ah, ch
mov byte [esp + 0x153], dl
mov esi, esp
mov byte [esp + 0x154], ah
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x151]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb5d0
sub ecx, edx
lea eax, [esp + 0x151]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x458]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x75c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2c0]
push ecx
lea ecx, [esp + 0x79c]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x440]
call fcn.004b6490
mov ch, 0x26
mov byte [esp + 0x145], 0
mov cl, 0x55
mov byte [esp + 0x140], ch
xor cl, ch
mov dword [esp + 0x2c0], 0x44318000
sub esp, 0x18
mov byte [esp + 0x15a], cl
mov al, 0x65
mov dword [esp + 0x2dc], 0x43870000
mov dl, 6
mov byte [esp + 0x15d], 0
mov ah, 0x14
xor al, ch
xor dl, ch
mov byte [esp + 0x159], al
xor ah, ch
mov byte [esp + 0x15b], dl
mov esi, esp
mov byte [esp + 0x15c], ah
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x159]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb6b0
sub ecx, edx
lea eax, [esp + 0x159]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x470]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x75c]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2c8]
push ecx
lea ecx, [esp + 0x79c]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x458]
call fcn.004b6490
push 0
push dword [esp + 0x6fc]
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9858]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb74a
mov eax, dword [eax + 4]
jmp 0x4bb74c
xor eax, eax
push 0x14c
push 0x29
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9858]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb77e
mov eax, dword [eax + 4]
jmp 0x4bb780
xor eax, eax
push 0x14c
push 0x142
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9858]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb7b5
mov eax, dword [eax + 4]
jmp 0x4bb7b7
xor eax, eax
push 0x14c
push 0x25b
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d97dc]
mov dword [esp + 0x6fc], ecx
test eax, eax
je 0x4bb7ec
mov eax, dword [eax + 4]
jmp 0x4bb7ee
xor eax, eax
push 0x22
push 0x1bc
push eax
push dword [esp + 0x704]
call edi
mov ecx, dword [esp + 0x6fc]
test eax, eax
cmovne ecx, eax
cmp dword [0x4d901c], 0xfffffffe
mov dword [esp + 0x6fc], ecx
jne 0x4bb938
mov byte [esp + 0x120], 0x4e
mov al, 7
xor al, byte [esp + 0x120]
mov cl, 0x20
xor cl, byte [esp + 0x120]
mov ch, 0x2b
mov byte [esp + 0x121], al
sub esp, 0x18
mov byte [esp + 0x3a], ch
mov dl, 0x6e
mov al, byte [esp + 0x3a]
mov ah, 0xa
mov byte [esp + 0x13a], cl
mov dh, 0x38
mov cl, byte [esp + 0x138]
mov esi, esp
xor al, cl
mov byte [esp + 0x3b], 0x22
mov byte [esp + 0x13f], al
xor ch, cl
mov al, byte [esp + 0x3b]
xor dl, cl
xor al, cl
mov byte [esp + 0x43], 0x21
mov byte [esp + 0x140], al
xor ah, cl
mov al, byte [esp + 0x43]
xor dh, cl
xor al, cl
mov byte [esp + 0x33], 0x3e
mov byte [esp + 0x141], al
mov al, byte [esp + 0x33]
xor al, cl
mov byte [esp + 0x13d], ch
mov byte [esp + 0x143], 0
mov ecx, esi
mov dword [esp + 0x2e0], 0x43140000
mov dword [esp + 0x2e4], 0x43c30000
mov byte [esp + 0x13b], dl
mov byte [esp + 0x13c], ah
mov byte [esp + 0x13e], dh
mov byte [esp + 0x142], al
mov byte [esp + 0x143], 0
call fcn.004b7490
lea ecx, [esp + 0x139]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb900
sub ecx, edx
lea eax, [esp + 0x139]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x488]
call fcn.004c00f0
lea esi, [esp + 0x488]
lea edi, [esp + 0x2e0]
jmp 0x4bba03
mov byte [esp + 0xe8], 0x5b
mov al, 0x17
xor al, byte [esp + 0xe8]
mov cl, 0x3a
mov byte [esp + 0xe9], al
mov ch, 0x38
mov al, byte [esp + 0xe8]
sub esp, 0x18
xor cl, al
mov byte [esp + 0x107], 0
xor ch, al
mov byte [esp + 0x102], cl
mov dl, 0x2e
mov byte [esp + 0x105], ch
mov ah, 0x35
mov dword [esp + 0x2e8], 0x43140000
mov dh, 0x33
mov dword [esp + 0x2ec], 0x43c30000
mov esi, esp
mov byte [esp + 0x107], 0
xor dl, al
xor ah, al
xor dh, al
mov byte [esp + 0x103], dl
mov ecx, esi
mov byte [esp + 0x104], ah
mov byte [esp + 0x106], dh
call fcn.004b7490
lea ecx, [esp + 0x101]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb9d0
sub ecx, edx
lea eax, [esp + 0x101]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x4a0]
call fcn.004c00f0
lea esi, [esp + 0x4a0]
lea edi, [esp + 0x2e8]
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7b0]
push ecx
lea ecx, [esp + 0x70c]
push ecx
push edi
lea ecx, [esp + 0x774]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
mov ecx, esi
call fcn.004b6490
mov byte [esp + 0x114], 0xa
mov al, 0x43
xor al, byte [esp + 0x114]
mov cl, 0x64
xor cl, byte [esp + 0x114]
mov ch, 0x6f
mov byte [esp + 0x115], al
sub esp, 0x18
mov byte [esp + 0x33], ch
mov dl, 0x2a
mov al, byte [esp + 0x33]
mov ah, 0x4e
mov byte [esp + 0x12e], cl
mov dh, 0x7c
mov cl, byte [esp + 0x12c]
mov esi, esp
xor al, cl
mov byte [esp + 0x43], 0x66
mov byte [esp + 0x133], al
xor ch, cl
mov al, byte [esp + 0x43]
xor dl, cl
xor al, cl
mov byte [esp + 0x3a], 0x65
mov byte [esp + 0x134], al
xor ah, cl
mov al, byte [esp + 0x3a]
xor dh, cl
xor al, cl
mov byte [esp + 0x3b], 0x7a
mov byte [esp + 0x135], al
mov al, byte [esp + 0x3b]
xor al, cl
mov byte [esp + 0x131], ch
mov byte [esp + 0x137], 0
mov ecx, esi
mov dword [esp + 0x2f0], 0x43d88000
mov dword [esp + 0x2f4], 0x43c30000
mov byte [esp + 0x12f], dl
mov byte [esp + 0x130], ah
mov byte [esp + 0x132], dh
mov byte [esp + 0x136], al
mov byte [esp + 0x137], 0
call fcn.004b7490
lea ecx, [esp + 0x12d]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bbb20
sub ecx, edx
lea eax, [esp + 0x12d]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x4b8]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7b0]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2e0]
push ecx
lea ecx, [esp + 0x774]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x4a0]
call fcn.004b6490
mov byte [esp + 0x154], 0x22
mov al, 0x6b
xor al, byte [esp + 0x154]
mov cl, 0x4c
xor cl, byte [esp + 0x154]
mov ch, 0x47
mov byte [esp + 0x155], al
sub esp, 0x18
mov byte [esp + 0x33], ch
mov dl, 2
mov al, byte [esp + 0x33]
mov ah, 0x66
mov byte [esp + 0x16e], cl
mov dh, 0x54
mov cl, byte [esp + 0x16c]
mov esi, esp
xor al, cl
mov byte [esp + 0x43], 0x4e
mov byte [esp + 0x173], al
xor ch, cl
mov al, byte [esp + 0x43]
xor dl, cl
xor al, cl
mov byte [esp + 0x3a], 0x4d
mov byte [esp + 0x174], al
xor ah, cl
mov al, byte [esp + 0x3a]
xor dh, cl
xor al, cl
mov byte [esp + 0x3b], 0x52
mov byte [esp + 0x175], al
mov al, byte [esp + 0x3b]
xor al, cl
mov byte [esp + 0x171], ch
mov byte [esp + 0x177], 0
mov ecx, esi
mov dword [esp + 0x2f8], 0x44328000
mov dword [esp + 0x2fc], 0x43c30000
mov byte [esp + 0x16f], dl
mov byte [esp + 0x170], ah
mov byte [esp + 0x172], dh
mov byte [esp + 0x176], al
mov byte [esp + 0x177], 0
call fcn.004b7490
lea ecx, [esp + 0x16d]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bbc68
sub ecx, edx
lea eax, [esp + 0x16d]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x4d0]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7b0]
push ecx
lea ecx, [esp + 0x70c]
push ecx
lea ecx, [esp + 0x2e8]
push ecx
lea ecx, [esp + 0x774]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x710]
call fcn.004b7a80
lea ecx, [esp + 0x4b8]
call fcn.004b6490
push 2
push dword [esp + 0x6fc]
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov edi, dword [0x4d9880]
test eax, eax
mov ecx, dword [esp + 0x6fc]
cmovne ecx, eax
mov dword [esp + 0x6fc], ecx
xor ecx, ecx
mov eax, dword [edi + 0x3c]
mov dword [esp + 0x14], ecx
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x4a7634f
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bbd3f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bbd22
cmp edx, 0x27691938
je 0x4bbd48
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bbd12
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push 0xcc0020
push 0
mov eax, dword [edx + 0x24]
push 0
push dword [esp + 0x30]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
push 0x1db
push 0x35c
push 0
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
push 0
push dword [esp + 0x100]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x374cf8bd
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bbdd4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bbdb7
cmp edx, 0x6a14070a
je 0x4bbddd
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bbda7
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x30]
mov eax, dword [edx + 0x24]
push dword [esp + 0x28]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x49f10dfd
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bbe4f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bbe32
cmp edx, 0x98684549
je 0x4bbe58
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bbe22
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x1c]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xdc6d4a4d
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bbecd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bbeb0
cmp edx, 0xc0014d43
je 0x4bbed6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bbea0
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x24]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
lea ecx, [esp + 0x864]
call fcn.004b6490
push dword [esp + 0x708]
call dword [sym.imp.gdiplus.dll_GdipDeleteStringFormat]
push dword [esp + 0x790]
mov esi, dword [sym.imp.gdiplus.dll_GdipDeleteFont]
call esi
push dword [esp + 0xe4]
call esi
push dword [esp + 0x768]
call esi
push dword [esp + 0x748]
call esi
push dword [esp + 0x7ec]
call esi
push dword [esp + 0x72c]
call dword [sym.imp.gdiplus.dll_GdipDeleteFontFamily]
push dword [esp + 0x79c]
mov esi, dword [sym.imp.gdiplus.dll_GdipDeleteBrush]
mov dword [esp + 0x79c], 0x4cb584
call esi
push dword [esp + 0x7a8]
mov dword [esp + 0x7a8], 0x4cb584
call esi
push dword [esp + 0x800]
mov dword [esp + 0x800], 0x4cb584
call esi
push dword [esp + 0x7b4]
mov dword [esp + 0x7b4], 0x4cb584
call esi
push dword [esp + 0x724]
mov dword [esp + 0x724], 0x4cb584
call esi
push dword [esp + 0x780]
mov dword [esp + 0x780], 0x4cb584
call esi
push dword [esp + 0x760]
mov dword [esp + 0x760], 0x4cb584
call esi
push dword [esp + 0x740]
mov dword [esp + 0x740], 0x4cb584
call esi
push dword [esp + 0x754]
mov dword [esp + 0x754], 0x4cb584
call esi
push dword [esp + 0x83c]
mov dword [esp + 0x83c], 0x4cb584
call esi
push dword [esp + 0x6f8]
jmp 0x4bf83c
mov dword [esp + 0x1b0], eax
mov esi, dword [eax + 0x20]
mov dword [esp + 0x14], ecx
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xb27e5409
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc06d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc050
cmp edx, 0x7bc63ef6
je 0x4bc076
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc040
mov edx, dword [esp + 0x1b0]
mov ecx, dword [esp + 0x14]
push dword [esp + 0xe0]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
mov dword [esp + 0x24], eax
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x2c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x3352f047
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc0ee
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc0d1
cmp edx, 0x22e9b3a2
je 0x4bc0f7
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc0c1
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push 0x258
push 0x1c2
mov eax, dword [edx + 0x24]
push dword [esp + 0xe8]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
mov dword [esp + 0x2c], eax
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x30], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xa2fdc68d
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc17d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc160
cmp edx, 0xa40180ba
je 0x4bc186
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc150
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x2c]
mov eax, dword [edx + 0x24]
push dword [esp + 0x28]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
mov dword [esp + 0x12c], eax
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x30], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x82466d06
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc1ff
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc1e2
cmp edx, 0x9cd72b3
je 0x4bc208
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc1d2
mov edx, dword [esp + 0x30]
lea eax, [esp + 0x850]
mov ecx, dword [esp + 0x14]
push eax
push dword [0x4d9864]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x30], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x6d9ec83b
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc280
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc263
cmp edx, 0x388833bf
je 0x4bc289
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc253
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d53e0]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edi]
add esi, edi
mov word [esp + 0x1d8], 0x4b7a
movups xmmword [esp + 0x1c8], xmm0
mov byte [esp + 0x1da], 0
xor ecx, ecx
nop dword [eax]
mov al, byte [esp + 0x1c8]
xor byte [esp + ecx + 0x1c9], al
inc ecx
cmp ecx, 0x11
jb 0x4bc2d0
sub esp, 0x18
mov byte [esp + 0x1f2], 0
mov edi, esp
mov ecx, edi
call fcn.004b7490
lea ecx, [esp + 0x1e1]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bc302
sub ecx, edx
lea eax, [esp + 0x1e1]
push ecx
push eax
mov ecx, edi
call fcn.004b7120
lea ecx, [esp + 0x4e8]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x12
call esi
lea ecx, [esp + 0x4d0]
mov dword [esp + 0x1a8], eax
call fcn.004b6490
mov edi, dword [0x4d9880]
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x30], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x57faae42
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc3b2
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc395
cmp edx, 0xcfb706c0
je 0x4bc3bb
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc385
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d3db0]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edi]
add esi, edi
mov word [esp + 0x1c4], 0x637
movups xmmword [esp + 0x1b4], xmm0
mov byte [esp + 0x1c6], 0
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [esp + 0x1b4]
xor byte [esp + ecx + 0x1b5], al
inc ecx
cmp ecx, 0x11
jb 0x4bc400
sub esp, 0x18
mov byte [esp + 0x1de], 0
mov edi, esp
mov ecx, edi
call fcn.004b7490
lea ecx, [esp + 0x1cd]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bc432
sub ecx, edx
lea eax, [esp + 0x1cd]
push ecx
push eax
mov ecx, edi
call fcn.004b7120
lea ecx, [esp + 0x500]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x14
call esi
lea ecx, [esp + 0x4e8]
mov dword [esp + 0xe4], eax
call fcn.004b6490
mov edi, dword [0x4d9880]
mov ecx, dword [edi + 0x3c]
mov eax, dword [ecx + edi + 0x78]
xor ecx, ecx
add eax, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x30], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x5de9c80e
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bc4e2
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bc4c5
cmp edx, 0x37cb1b64
je 0x4bc4eb
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bc4b5
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d5450]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edi]
add esi, edi
mov word [esp + 0x200], 0x4e7f
movups xmmword [esp + 0x1f0], xmm0
mov byte [esp + 0x202], 0
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [esp + 0x1f0]
xor byte [esp + ecx + 0x1f1], al
inc ecx
cmp ecx, 0x11
jb 0x4bc530
sub esp, 0x18
mov byte [esp + 0x21a], 0
mov edi, esp
mov ecx, edi
call fcn.004b7490
lea ecx, [esp + 0x209]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bc562
sub ecx, edx
lea eax, [esp + 0x209]
push ecx
push eax
mov ecx, edi
call fcn.004b7120
lea ecx, [esp + 0x518]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x1e
call esi
lea ecx, [esp + 0x500]
mov dword [esp + 0x30], eax
call fcn.004b6490
lea eax, [esp + 0x6d4]
mov dword [esp + 0x6d4], 0
push eax
push dword [esp + 0x28]
call dword [sym.imp.gdiplus.dll_GdipCreateFromHDC]
mov ecx, dword [esp + 0x6d4]
xorps xmm0, xmm0
mov dword [esp + 0x704], eax
lea eax, [esp + 0x258]
mov dword [esp + 0x700], ecx
lea ecx, [esp + 0x82c]
push eax
movq qword [esp + 0x830], xmm0
mov dword [esp + 0x838], 0
mov dword [esp + 0x25c], 0xff17181c
call fcn.004b7980
lea eax, [esp + 0x254]
mov dword [esp + 0x778], 0
xorps xmm0, xmm0
mov dword [esp + 0x254], 0xff1d2025
push eax
lea ecx, [esp + 0x774]
movq qword [esp + 0x774], xmm0
call fcn.004b7980
lea eax, [esp + 0x250]
mov dword [esp + 0x7c4], 0
xorps xmm0, xmm0
mov dword [esp + 0x250], 0xffcccccc
push eax
lea ecx, [esp + 0x7c0]
movq qword [esp + 0x7c0], xmm0
call fcn.004b7980
lea eax, [esp + 0x24c]
mov dword [esp + 0x7d0], 0
xorps xmm0, xmm0
mov dword [esp + 0x24c], 0xffffc95d
push eax
lea ecx, [esp + 0x7cc]
movq qword [esp + 0x7cc], xmm0
call fcn.004b7980
lea eax, [esp + 0x248]
mov dword [esp + 0x828], 0
xorps xmm0, xmm0
mov dword [esp + 0x248], 0xffffde72
push eax
lea ecx, [esp + 0x824]
movq qword [esp + 0x824], xmm0
call fcn.004b7980
xorps xmm0, xmm0
mov dword [esp + 0x84c], 0
movq qword [esp + 0x844], xmm0
mov dword [esp + 0x23c], 0xff828282
lea eax, [esp + 0x23c]
push eax
lea ecx, [esp + 0x848]
call fcn.004b7980
lea eax, [esp + 0x244]
mov dword [esp + 0x81c], 0
xorps xmm0, xmm0
mov dword [esp + 0x244], 0xff555555
push eax
lea ecx, [esp + 0x818]
movq qword [esp + 0x818], xmm0
call fcn.004b7980
lea eax, [esp + 0x240]
mov dword [esp + 0x810], 0
xorps xmm0, xmm0
mov dword [esp + 0x240], 0xff15161a
push eax
lea ecx, [esp + 0x80c]
movq qword [esp + 0x80c], xmm0
call fcn.004b7980
xorps xmm0, xmm0
mov word [esp + 0x214], 0x2c1d
movlpd qword [esp + 0x734], xmm0
xor ecx, ecx
movaps xmm0, xmmword [0x4d48e0]
movups xmmword [esp + 0x204], xmm0
mov byte [esp + 0x216], 0
nop word [eax + eax]
mov al, byte [esp + 0x204]
xor byte [esp + ecx + 0x205], al
inc ecx
cmp ecx, 0x11
jb 0x4bc7e0
sub esp, 0x18
mov byte [esp + 0x22e], 0
mov esi, esp
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x21d]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bc812
sub ecx, edx
lea eax, [esp + 0x21d]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x530]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x734]
push ecx
push 0
push eax
call dword [sym.imp.gdiplus.dll_GdipCreateFontFamilyFromName]
lea ecx, [esp + 0x518]
mov dword [esp + 0x738], eax
call fcn.004b6490
mov esi, dword [sym.imp.gdiplus.dll_GdipCreateFont]
lea eax, [esp + 0x6d0]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41580000
push dword [esp + 0x744]
mov dword [esp + 0x6e4], 0
call esi
mov dword [esp + 0x7f8], eax
mov eax, dword [esp + 0x6d0]
mov dword [esp + 0x7f4], eax
lea eax, [esp + 0x6cc]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41800000
push dword [esp + 0x744]
mov dword [esp + 0x6e0], 0
call esi
mov dword [esp + 0x7e8], eax
mov eax, dword [esp + 0x6cc]
mov dword [esp + 0x7e4], eax
lea eax, [esp + 0x6c8]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41920000
push dword [esp + 0x744]
mov dword [esp + 0x6dc], 0
call esi
mov dword [esp + 0x78c], eax
mov eax, dword [esp + 0x6c8]
mov dword [esp + 0x788], eax
lea eax, [esp + 0x6f4]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41a00000
push dword [esp + 0x744]
mov dword [esp + 0x708], 0
call esi
mov dword [esp + 0x7e0], eax
mov eax, dword [esp + 0x6f4]
mov dword [esp + 0x7dc], eax
lea eax, [esp + 0x6e0]
push eax
push 3
push 1
push ecx
mov dword [esp], 0x41b40000
push dword [esp + 0x744]
mov dword [esp + 0x6f4], 0
call esi
mov dword [esp + 0x7d8], eax
mov eax, dword [esp + 0x6e0]
mov dword [esp + 0x7d4], eax
push 0x259
push 0x1c3
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [esp + 0x840]
push dword [esp + 0x714]
call dword [sym.imp.gdiplus.dll_GdipFillRectangleI]
mov ecx, dword [esp + 0x704]
test eax, eax
push 4
push dword [esp + 0x704]
cmovne ecx, eax
mov dword [esp + 0x70c], ecx
call dword [sym.imp.gdiplus.dll_GdipSetSmoothingMode]
mov ecx, dword [esp + 0x704]
test eax, eax
push 4
push dword [esp + 0x704]
cmovne ecx, eax
mov dword [esp + 0x70c], ecx
call dword [sym.imp.gdiplus.dll_GdipSetTextRenderingHint]
mov ecx, dword [esp + 0x704]
test eax, eax
push 0
push dword [esp + 0x704]
cmovne ecx, eax
mov dword [esp + 0x70c], ecx
call dword [sym.imp.gdiplus.dll_GdipSetCompositingMode]
mov ecx, dword [esp + 0x704]
test eax, eax
push 2
push dword [esp + 0x704]
cmovne ecx, eax
mov dword [esp + 0x70c], ecx
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
cmp dword [0x4d97c0], 2
mov dword [esp + 0x704], ecx
jne 0x4bca96
mov eax, dword [0x4d9800]
test eax, eax
je 0x4bca70
mov eax, dword [eax + 4]
jmp 0x4bca72
xor eax, eax
mov edi, dword [sym.imp.gdiplus.dll_GdipDrawImageI]
push 0x14
push 0x168
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bcad0
mov dword [esp + 0x704], eax
jmp 0x4bcad0
mov eax, dword [0x4d984c]
test eax, eax
je 0x4bcaa4
mov eax, dword [eax + 4]
jmp 0x4bcaa6
xor eax, eax
mov edi, dword [sym.imp.gdiplus.dll_GdipDrawImageI]
push 0x14
push 0x168
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
cmp dword [0x4d97c0], 3
jne 0x4bcb07
mov eax, dword [0x4d9814]
test eax, eax
je 0x4bcae7
mov eax, dword [eax + 4]
jmp 0x4bcae9
xor eax, eax
push 0x22
push 0x14a
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bcb3b
mov dword [esp + 0x704], eax
jmp 0x4bcb3b
mov eax, dword [0x4d97d8]
test eax, eax
je 0x4bcb15
mov eax, dword [eax + 4]
jmp 0x4bcb17
xor eax, eax
push 0x22
push 0x14a
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
mov eax, dword [0x4d9840]
test eax, eax
je 0x4bcb49
mov eax, dword [eax + 4]
jmp 0x4bcb4b
xor eax, eax
push 0x23
push 0xa8
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
mov byte [esp + 0x148], 0x64
mov dl, 8
cmovne ecx, eax
mov byte [esp + 0x2b], 0x44
mov dword [esp + 0x704], ecx
mov al, 0x33
xor al, byte [esp + 0x148]
mov cl, 1
mov byte [esp + 0x149], al
mov ch, 0xb
mov byte [esp + 0x1b], cl
sub esp, 0x18
xor cl, byte [esp + 0x160]
mov ah, 7
mov al, byte [esp + 0x33]
mov dh, 9
mov byte [esp + 0x162], cl
mov esi, esp
mov cl, byte [esp + 0x160]
xor al, cl
mov byte [esp + 0x3a], 0x10
mov byte [esp + 0x167], al
xor dl, cl
mov al, byte [esp + 0x43]
xor ah, cl
xor al, cl
mov byte [esp + 0x3b], ch
mov byte [esp + 0x168], al
xor ch, cl
mov al, byte [esp + 0x3a]
xor dh, cl
xor al, cl
mov byte [esp + 0x165], ch
mov byte [esp + 0x169], al
mov al, byte [esp + 0x3b]
xor al, cl
mov byte [esp + 0x16b], 0
mov ecx, esi
mov dword [esp + 0x320], 0x43000000
mov dword [esp + 0x324], 0x42f00000
mov byte [esp + 0x163], dl
mov byte [esp + 0x164], ah
mov byte [esp + 0x166], dh
mov byte [esp + 0x16a], al
mov byte [esp + 0x16b], 0
call fcn.004b7490
lea ecx, [esp + 0x161]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcc50
sub ecx, edx
lea eax, [esp + 0x161]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x548]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7bc]
push ecx
lea ecx, [esp + 0x30c]
push ecx
lea ecx, [esp + 0x790]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x714]
call fcn.004b79e0
lea ecx, [esp + 0x530]
call fcn.004b6490
mov cl, 0x5c
mov byte [esp + 0xfc], 0x3a
mov dl, cl
mov byte [esp + 0x1b], 0x55
xor cl, byte [esp + 0xfc]
mov al, 0x7f
xor al, byte [esp + 0xfc]
mov ch, 0x49
mov byte [esp + 0xfd], al
sub esp, 0x18
mov al, byte [esp + 0x33]
mov ah, 0x4f
mov byte [esp + 0x116], cl
mov dh, 0x53
mov cl, byte [esp + 0x114]
mov esi, esp
xor al, cl
mov byte [esp + 0x43], 0x54
mov byte [esp + 0x11b], al
xor ch, cl
mov al, byte [esp + 0x43]
xor dl, cl
xor ah, cl
mov byte [esp + 0x119], ch
xor dh, cl
mov byte [esp + 0x11d], 0
xor al, cl
mov dword [esp + 0x308], 0x42dc0000
mov ecx, esi
mov dword [esp + 0x30c], 0x43110000
mov byte [esp + 0x117], dl
mov byte [esp + 0x118], ah
mov byte [esp + 0x11a], dh
mov byte [esp + 0x11c], al
mov byte [esp + 0x11d], 0
call fcn.004b7490
lea ecx, [esp + 0x115]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcd70
sub ecx, edx
lea eax, [esp + 0x115]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x560]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7c8]
push ecx
lea ecx, [esp + 0x2f4]
push ecx
lea ecx, [esp + 0x790]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x714]
call fcn.004b79e0
lea ecx, [esp + 0x548]
call fcn.004b6490
mov dh, 0x7c
mov byte [esp + 0x166], 0
mov cl, 0x1d
mov dword [esp + 0x2f8], 0x43540000
mov ch, 0x13
mov dword [esp + 0x2fc], 0x43110000
xor cl, dh
mov byte [esp + 0x160], dh
xor ch, dh
mov byte [esp + 0x162], cl
sub esp, 0x18
mov byte [esp + 0x17d], ch
mov al, 0x31
mov byte [esp + 0x17e], 0
mov dl, 0x1f
mov ah, 0xe
mov esi, esp
xor al, dh
xor dl, dh
mov byte [esp + 0x179], al
xor ah, dh
mov byte [esp + 0x17b], dl
mov ecx, esi
mov byte [esp + 0x17c], ah
call fcn.004b7490
lea ecx, [esp + 0x179]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bce50
sub ecx, edx
lea eax, [esp + 0x179]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x578]
call fcn.004c00f0
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x7bc]
push ecx
lea ecx, [esp + 0x2fc]
push ecx
lea ecx, [esp + 0x790]
push ecx
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x714]
call fcn.004b79e0
lea ecx, [esp + 0x560]
call fcn.004b6490
cmp byte [0x4d9019], 0
je 0x4bd062
movss xmm2, dword [0x4d1684]
lea ecx, [esp + 0x340]
movss xmm1, dword [0x4d1674]
call fcn.004b7840
push 0x53
lea ecx, [esp + 0x88]
mov dword [esp + 0x20], eax
mov byte [esp + 0x88], 0x57
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0x88]
mov byte [esp + 0x89], al
call fcn.004b51f0
push 0x67
lea ecx, [esp + 0x88]
mov byte [esp + 0x8a], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x88]
mov byte [esp + 0x8b], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x88]
mov byte [esp + 0x8c], al
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0x88]
mov byte [esp + 0x8d], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x88]
mov byte [esp + 0x8e], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x88]
mov byte [esp + 0x8f], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x88]
mov byte [esp + 0x90], al
call fcn.004b51f0
push 0x6f
lea ecx, [esp + 0x88]
mov byte [esp + 0x91], al
call fcn.004b51f0
push 0x77
lea ecx, [esp + 0x88]
mov byte [esp + 0x92], al
call fcn.004b51f0
mov byte [esp + 0x8f], al
xor esi, esi
mov byte [esp + 0x90], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x89]
call fcn.004b5210
lea ecx, [esp + 0x84]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x89]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0xb
jb 0x4bcfe0
push 0xb
lea ecx, [esp + 0x89]
call fcn.004b5210
lea ecx, [esp + 0x85]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
lea ecx, [esp + 0x7fc]
mov dword [esp + 0x2c], ecx
lea esi, [esp + 0x590]
mov ecx, esp
push eax
call fcn.004b60a0
mov ecx, esi
call fcn.004c00f0
mov ecx, eax
jmp 0x4bd128
mov dword [esp + 0x300], 0x43040000
mov cl, 0x40
mov dword [esp + 0x304], 0x43320000
xor eax, eax
mov dword [esp + 0x168], 0xa9ae8240
mov dword [esp + 0x16c], 0xb160a8b2
mov dword [esp + 0x170], 0xa0b7a9a5
mov word [esp + 0x174], 0xb1
nop word [eax + eax]
xor byte [esp + eax + 0x169], cl
inc eax
cmp eax, 0xc
jae 0x4bd0c6
mov cl, byte [esp + 0x168]
jmp 0x4bd0b0
sub esp, 0x18
mov byte [esp + 0x18d], 0
mov esi, esp
mov ecx, esi
call fcn.004b7490
lea ecx, [esp + 0x181]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bd0e4
sub ecx, edx
lea eax, [esp + 0x181]
push ecx
push eax
mov ecx, esi
call fcn.004b7120
lea ecx, [esp + 0x5a8]
call fcn.004c0160
mov ecx, eax
lea esi, [esp + 0x5a8]
lea eax, [esp + 0x80c]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x318]
mov dword [esp + 0x34], eax
add esp, 0x18
call fcn.004b5cf0
lea ecx, [esp + 0x814]
push ecx
push dword [esp + 0x20]
lea ecx, [esp + 0x708]
push dword [esp + 0x1c]
push 0xffffffffffffffff
push eax
call fcn.004b79e0
mov ecx, esi
call fcn.004b6490
sub esp, 0x10
lea edx, [esp + 0x780]
cmp byte [0x4d9019], 0
lea ecx, [esp + 0x710]
mov eax, esp
push 5
push 0xff1d2025
je 0x4bd182
movaps xmm0, xmmword [0x4d2fd0]
jmp 0x4bd189
movaps xmm0, xmmword [0x4d2fc0]
movups xmmword [eax], xmm0
call fcn.004b9a30
mov eax, dword [0x4d9820]
add esp, 0x18
test eax, eax
je 0x4bd1a2
mov eax, dword [eax + 4]
jmp 0x4bd1a4
xor eax, eax
push 0xe8
push 0x127
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov eax, dword [0x4d9860]
mov dword [esp + 0x704], ecx
test eax, eax
je 0x4bd1d9
mov eax, dword [eax + 4]
jmp 0x4bd1db
xor eax, eax
push 0xe8
push 0x14f
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
lea edx, [esp + 0x770]
movaps xmm0, xmmword [0x4d30c0]
test eax, eax
cmovne ecx, eax
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x714], ecx
lea ecx, [esp + 0x710]
push 5
push 0xff1d2025
movups xmmword [eax], xmm0
call fcn.004b9a30
add esp, 0x18
cmp dword [0x4d97c0], 4
jne 0x4bd268
mov eax, dword [0x4d97f0]
test eax, eax
je 0x4bd245
mov eax, dword [eax + 4]
jmp 0x4bd247
xor eax, eax
push 0x11d
push 0x144
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bd29f
mov dword [esp + 0x704], eax
jmp 0x4bd29f
mov eax, dword [0x4d97e0]
test eax, eax
je 0x4bd276
mov eax, dword [eax + 4]
jmp 0x4bd278
xor eax, eax
push 0x11d
push 0x144
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
movaps xmm0, xmmword [0x4d30d0]
lea edx, [esp + 0x770]
sub esp, 0x10
lea ecx, [esp + 0x710]
mov eax, esp
push 5
push 0xff1d2025
movups xmmword [eax], xmm0
call fcn.004b9a30
add esp, 0x18
lea ecx, [esp + 0x700]
cmp dword [0x4d97c0], 5
push 0x15d
jne 0x4bd303
cmp byte [0x4d97c6], 0
je 0x4bd2f6
push 0x146
push dword [0x4d9810]
jmp 0x4bd324
push 0x145
push dword [0x4d981c]
jmp 0x4bd324
cmp byte [0x4d97c6], 0
je 0x4bd319
push 0x146
push dword [0x4d97f8]
jmp 0x4bd324
push 0x145
push dword [0x4d9848]
call fcn.004b7b30
movaps xmm0, xmmword [0x4d2fb0]
lea edx, [esp + 0x770]
sub esp, 0x10
lea ecx, [esp + 0x710]
mov eax, esp
push 5
push 0xff1d2025
movups xmmword [eax], xmm0
call fcn.004b9a30
add esp, 0x18
cmp byte [0x4d9018], 0
je 0x4bd38b
cmp dword [0x4d97c0], 0xfa2
lea ecx, [esp + 0x700]
push 0x197
push 0x2d
jne 0x4bd380
push dword [0x4d983c]
jmp 0x4bd386
push dword [0x4d9850]
call fcn.004b7b30
cmp dword [0x4d97c0], 1
push 0x34
push 0x140
push 0x1c1
push 0x28
jne 0x4bd3c3
lea ecx, [esp + 0x698]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x830]
mov ecx, esp
push 6
push 0xffffde72
jmp 0x4bd3e2
lea ecx, [esp + 0x668]
call fcn.004b7850
sub esp, 0x10
lea edx, [esp + 0x7d8]
mov ecx, esp
push 6
push 0xffffc95d
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
lea ecx, [esp + 0x718]
call fcn.004b9a30
add esp, 0x18
push 0
push dword [esp + 0x704]
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
cmp byte [0x4d9019], 0
mov dword [esp + 0x704], ecx
je 0x4bd531
movss xmm2, dword [0x4d1694]
lea ecx, [esp + 0x318]
movss xmm1, dword [0x4d167c]
call fcn.004b7840
push 0x53
lea ecx, [esp + 0x58]
mov dword [esp + 0x20], eax
mov byte [esp + 0x58], 0x41
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0x58]
mov byte [esp + 0x59], al
call fcn.004b51f0
push 0x67
lea ecx, [esp + 0x58]
mov byte [esp + 0x5a], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x58]
mov byte [esp + 0x5b], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x58]
mov byte [esp + 0x5c], al
call fcn.004b51f0
push 0x49
lea ecx, [esp + 0x58]
mov byte [esp + 0x5d], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x58]
mov byte [esp + 0x5e], al
call fcn.004b51f0
mov byte [esp + 0x5b], al
xor esi, esi
mov byte [esp + 0x5c], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x59]
call fcn.004b5210
lea ecx, [esp + 0x54]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x59]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x4bd4c0
push 7
lea ecx, [esp + 0x59]
call fcn.004b5210
lea ecx, [esp + 0x55]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
lea ecx, [esp + 0x7f4]
mov dword [esp + 0x2c], ecx
lea esi, [esp + 0x5c0]
mov ecx, esp
push eax
call fcn.004b60a0
mov ecx, esi
call fcn.004c00f0
jmp 0x4bd61c
movss xmm2, dword [0x4d1690]
lea ecx, [esp + 0x320]
movss xmm1, dword [0x4d1678]
call fcn.004b7840
push 0xffffffffffffffc2
lea ecx, [esp + 0x38]
mov dword [esp + 0x20], eax
mov byte [esp + 0x38], 1
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0x38]
mov byte [esp + 0x39], al
call fcn.004b51f0
push 0xffffffffffffffe9
lea ecx, [esp + 0x38]
mov byte [esp + 0x3a], al
call fcn.004b51f0
push 0xfffffffffffffff2
lea ecx, [esp + 0x38]
mov byte [esp + 0x3b], al
call fcn.004b51f0
push 0xffffffffffffffe8
lea ecx, [esp + 0x38]
mov byte [esp + 0x3c], al
call fcn.004b51f0
mov byte [esp + 0x39], al
xor esi, esi
mov byte [esp + 0x3a], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x39]
call fcn.004b5210
lea ecx, [esp + 0x34]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x39]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x4bd5b0
push 5
lea ecx, [esp + 0x39]
call fcn.004b5210
lea ecx, [esp + 0x35]
mov byte [eax], 0
call fcn.004b5200
sub esp, 0x18
lea ecx, [esp + 0x7ec]
mov dword [esp + 0x2c], ecx
lea esi, [esp + 0x5d8]
mov ecx, esp
push eax
call fcn.004b60a0
mov ecx, esi
call fcn.004c0160
add esp, 0x18
mov ecx, eax
call fcn.004b5cf0
lea ecx, [esp + 0x808]
push ecx
push dword [esp + 0x20]
lea ecx, [esp + 0x708]
push dword [esp + 0x1c]
push 0xffffffffffffffff
push eax
call fcn.004b79e0
mov ecx, esi
call fcn.004b5d40
push 2
push dword [esp + 0x704]
call dword [sym.imp.gdiplus.dll_GdipSetCompositingQuality]
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
cmp dword [0x4d97c0], 0x3e9
mov dword [esp + 0x704], ecx
jne 0x4bd6ab
mov eax, dword [0x4d9830]
test eax, eax
je 0x4bd688
mov eax, dword [eax + 4]
jmp 0x4bd68a
xor eax, eax
push 0x22b
push 0x97
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bd6e2
mov dword [esp + 0x704], eax
jmp 0x4bd6e2
mov eax, dword [0x4d9808]
test eax, eax
je 0x4bd6b9
mov eax, dword [eax + 4]
jmp 0x4bd6bb
xor eax, eax
push 0x22b
push 0x97
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
cmp dword [0x4d97c0], 0x3ea
jne 0x4bd71f
mov eax, dword [0x4d97e4]
test eax, eax
je 0x4bd6fc
mov eax, dword [eax + 4]
jmp 0x4bd6fe
xor eax, eax
push 0x22b
push 0xbf
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bd756
mov dword [esp + 0x704], eax
jmp 0x4bd756
mov eax, dword [0x4d9834]
test eax, eax
je 0x4bd72d
mov eax, dword [eax + 4]
jmp 0x4bd72f
xor eax, eax
push 0x22b
push 0xbf
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
cmp dword [0x4d97c0], 0x3eb
jne 0x4bd793
mov eax, dword [0x4d9804]
test eax, eax
je 0x4bd770
mov eax, dword [eax + 4]
jmp 0x4bd772
xor eax, eax
push 0x22b
push 0xe7
push eax
push dword [esp + 0x70c]
call edi
test eax, eax
je 0x4bd7ca
mov dword [esp + 0x704], eax
jmp 0x4bd7ca
mov eax, dword [0x4d980c]
test eax, eax
je 0x4bd7a1
mov eax, dword [eax + 4]
jmp 0x4bd7a3
xor eax, eax
push 0x22b
push 0xe7
push eax
push dword [esp + 0x70c]
call edi
mov ecx, dword [esp + 0x704]
test eax, eax
cmovne ecx, eax
mov dword [esp + 0x704], ecx
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xb061181d
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bd81d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bd800
cmp edx, 0x4da823
je 0x4bd826
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bd7f0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x555555
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x1ab22025
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bd89d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bd880
cmp edx, 0x3903f3db
je 0x4bd8a6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bd870
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 1
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
movaps xmm0, xmmword [esp + 0x850]
movaps xmmword [esp + 0x710], xmm0
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x5f14f47
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bd92d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bd910
cmp edx, 0xf82dc804
je 0x4bd936
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bd900
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0xe4]
mov eax, dword [edx + 0x24]
push dword [esp + 0x28]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
cmp dword [0x4d97d0], 1
mov dword [esp + 0x710], 0x37
mov dword [esp + 0x714], 0x11b
jne 0x4bd9dd
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x3f6a5d42
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bd9cd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bd9b0
cmp edx, 0xd0c2e89c
je 0x4bd9d6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bd9a0
push 0xcccccc
jmp 0x4bda4b
mov eax, dword [0x4d97c0]
cmp eax, 0x7d1
je 0x4bd9f2
cmp eax, 4
jne 0x4bda6e
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x92304f38
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bda3d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bda20
cmp edx, 0xe6d34bce
je 0x4bda46
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bda10
push 0x969696
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edx, 0x4cb469
mov ecx, 0x4d9098
call fcn.004bfb00
mov edi, dword [0x4d9870]
xor ecx, ecx
test al, al
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
je 0x4bdb19
mov esi, dword [eax + edi + 0x20]
add eax, edi
mov dword [esp + 0x1c], eax
add esi, edi
mov ecx, dword [esi]
mov edx, 0x46159e3f
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bdad1
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdab4
cmp edx, 0x4909e05
je 0x4bdada
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdaa4
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, 0x4d9098
mov esi, dword [eax + edi]
add esi, edi
call fcn.004b5db0
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call esi
jmp 0x4bdded
mov esi, dword [eax + edi + 0x20]
add eax, edi
add esi, edi
mov dword [esp + 0x1c], eax
cmp byte [0x4d9019], 0
je 0x4bdc92
mov ecx, dword [esi]
mov edx, 0x47b622af
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bdb5f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdb42
cmp edx, 0x34fc7cf5
je 0x4bdb68
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdb32
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x59
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0x64]
add eax, edi
mov byte [esp + 0x64], 0x75
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0x6f
lea ecx, [esp + 0x64]
mov byte [esp + 0x65], al
call fcn.004b51f0
push 0x75
lea ecx, [esp + 0x64]
mov byte [esp + 0x66], al
call fcn.004b51f0
push 0x72
lea ecx, [esp + 0x64]
mov byte [esp + 0x67], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x64]
mov byte [esp + 0x68], al
call fcn.004b51f0
push 0x49
lea ecx, [esp + 0x64]
mov byte [esp + 0x69], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0x64]
mov byte [esp + 0x6a], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x64]
mov byte [esp + 0x6b], al
call fcn.004b51f0
push 0x65
lea ecx, [esp + 0x64]
mov byte [esp + 0x6c], al
call fcn.004b51f0
push 0x78
lea ecx, [esp + 0x64]
mov byte [esp + 0x6d], al
call fcn.004b51f0
mov byte [esp + 0x6a], al
xor esi, esi
mov byte [esp + 0x6b], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x65]
call fcn.004b5210
lea ecx, [esp + 0x60]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x65]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x4bdc30
push 0xa
lea ecx, [esp + 0x65]
call fcn.004b5210
lea ecx, [esp + 0x61]
mov byte [eax], 0
call fcn.004b5200
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
jmp 0x4bdded
mov ecx, dword [esi]
mov edx, 0xc242f532
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bdcbf
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdca2
cmp edx, 0x1db4034e
je 0x4bdcc8
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdc92
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffc2
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0x70]
add eax, edi
mov byte [esp + 0x70], 0x46
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0xffffffffffffffe0
lea ecx, [esp + 0x70]
mov byte [esp + 0x71], al
call fcn.004b51f0
push 0xfffffffffffffff8
lea ecx, [esp + 0x70]
mov byte [esp + 0x72], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x70]
mov byte [esp + 0x73], al
call fcn.004b51f0
push 0xffffffffffffffc8
lea ecx, [esp + 0x70]
mov byte [esp + 0x74], al
call fcn.004b51f0
push 0xffffffffffffffed
lea ecx, [esp + 0x70]
mov byte [esp + 0x75], al
call fcn.004b51f0
push 0xffffffffffffffe4
lea ecx, [esp + 0x70]
mov byte [esp + 0x76], al
call fcn.004b51f0
push 0xffffffffffffffe5
lea ecx, [esp + 0x70]
mov byte [esp + 0x77], al
call fcn.004b51f0
push 0xffffffffffffffea
lea ecx, [esp + 0x70]
mov byte [esp + 0x78], al
call fcn.004b51f0
push 0xfffffffffffffff1
lea ecx, [esp + 0x70]
mov byte [esp + 0x79], al
call fcn.004b51f0
mov byte [esp + 0x76], al
xor esi, esi
mov byte [esp + 0x77], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0x71]
call fcn.004b5210
lea ecx, [esp + 0x6c]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x71]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x4bdd90
push 0xa
lea ecx, [esp + 0x71]
call fcn.004b5210
lea ecx, [esp + 0x6d]
mov byte [eax], 0
call fcn.004b5200
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x9b79d7a1
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bde3d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bde20
cmp edx, 0x270b7d77
je 0x4bde46
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bde10
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x555555
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
cmp dword [0x4d97d0], 2
mov dword [esp + 0x710], 0x37
mov dword [esp + 0x714], 0x15b
jne 0x4bdf05
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x72c785fe
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bdedd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdec0
cmp edx, 0xe1234ec8
je 0x4bdee6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdeb0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0xcccccc
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
jmp 0x4bdf90
mov eax, dword [0x4d97c0]
cmp eax, 0x7d2
je 0x4bdf1a
cmp eax, 5
jne 0x4bdf9e
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xe828c404
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bdf6d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdf50
cmp edx, 0x4e392daa
je 0x4bdf76
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdf40
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x969696
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [esi + 0x1c]
push dword [esp + 0x28]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edx, 0x4cb469
mov ecx, 0x4d90c8
call fcn.004bfb00
xor ecx, ecx
mov dword [esp + 0x14], ecx
test al, al
je 0x4be19d
cmp byte [0x4d97c6], cl
je 0x4be055
mov edi, dword [0x4d9870]
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0x182734a0
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be00d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bdff0
cmp edx, 0xfec1c298
je 0x4be016
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bdfe0
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
mov ecx, 0x4d90c8
movzx edx, word [eax + edi]
mov eax, dword [esi + 0x1c]
lea eax, [eax + edx*4]
mov esi, dword [eax + edi]
add esi, edi
call fcn.004b5db0
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call esi
jmp 0x4be51f
mov edi, dword [0x4d9880]
mov dword [esp + 0x714], 0x159
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x8f643ff0
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be0ad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be090
cmp edx, 0xceebae4f
je 0x4be0b6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be080
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x30]
mov eax, dword [edx + 0x24]
push dword [esp + 0x28]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xa9ac210
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be12d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be110
cmp edx, 0x39b83288
je 0x4be136
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be100
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, 0x4d90c8
mov esi, dword [eax + edi]
add esi, edi
call fcn.004b5da0
push eax
push 0
lea eax, [esp + 0x5e0]
mov ecx, 0x4d9884
push eax
call fcn.004b5d50
mov ecx, eax
call fcn.004b5db0
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call esi
lea ecx, [esp + 0x5d8]
call fcn.004b5f90
jmp 0x4be51f
mov edi, dword [0x4d9870]
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
cmp byte [0x4d9019], 0
je 0x4be3b1
mov ecx, dword [esi]
mov edx, 0xe298a824
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be1ef
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be1d2
cmp edx, 0xba25559c
je 0x4be1f8
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be1c2
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x59
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0x98]
add eax, edi
mov byte [esp + 0x98], 0x75
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0x6f
lea ecx, [esp + 0x98]
mov byte [esp + 0x99], al
call fcn.004b51f0
push 0x75
lea ecx, [esp + 0x98]
mov byte [esp + 0x9a], al
call fcn.004b51f0
push 0x72
lea ecx, [esp + 0x98]
mov byte [esp + 0x9b], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x98]
mov byte [esp + 0x9c], al
call fcn.004b51f0
push 0x50
lea ecx, [esp + 0x98]
mov byte [esp + 0x9d], al
call fcn.004b51f0
push 0x61
lea ecx, [esp + 0x98]
mov byte [esp + 0x9e], al
call fcn.004b51f0
push 0x73
lea ecx, [esp + 0x98]
mov byte [esp + 0x9f], al
call fcn.004b51f0
push 0x73
lea ecx, [esp + 0x98]
mov byte [esp + 0xa0], al
call fcn.004b51f0
push 0x77
lea ecx, [esp + 0x98]
mov byte [esp + 0xa1], al
call fcn.004b51f0
push 0x6f
lea ecx, [esp + 0x98]
mov byte [esp + 0xa2], al
call fcn.004b51f0
push 0x72
lea ecx, [esp + 0x98]
mov byte [esp + 0xa3], al
call fcn.004b51f0
push 0x64
lea ecx, [esp + 0x98]
mov byte [esp + 0xa4], al
call fcn.004b51f0
mov byte [esp + 0xa1], al
xor esi, esi
mov byte [esp + 0xa2], 0
nop dword [eax]
push esi
lea ecx, [esp + 0x99]
call fcn.004b5210
lea ecx, [esp + 0x94]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x99]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0xd
jb 0x4be340
push 0xd
lea ecx, [esp + 0x99]
call fcn.004b5210
lea ecx, [esp + 0x95]
mov byte [eax], 0
call fcn.004b5200
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
jmp 0x4be51f
mov ecx, dword [esi]
mov edx, 0x3640d32
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be3de
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be3c1
cmp edx, 0x821dcb4e
je 0x4be3e7
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be3b1
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffc2
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0x7c]
add eax, edi
mov byte [esp + 0x7c], 0xe
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0xffffffffffffffe0
lea ecx, [esp + 0x7c]
mov byte [esp + 0x7d], al
call fcn.004b51f0
push 0xfffffffffffffff8
lea ecx, [esp + 0x7c]
mov byte [esp + 0x7e], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0x7c]
mov byte [esp + 0x7f], al
call fcn.004b51f0
push 0xffffffffffffffcf
lea ecx, [esp + 0x7c]
mov byte [esp + 0x80], al
call fcn.004b51f0
push 0xffffffffffffffe0
lea ecx, [esp + 0x7c]
mov byte [esp + 0x81], al
call fcn.004b51f0
push 0xfffffffffffffff0
lea ecx, [esp + 0x7c]
mov byte [esp + 0x82], al
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0x7c]
mov byte [esp + 0x83], al
call fcn.004b51f0
push 0xffffffffffffffeb
lea ecx, [esp + 0x7c]
mov byte [esp + 0x84], al
call fcn.004b51f0
push 0xfffffffffffffffc
lea ecx, [esp + 0x7c]
mov byte [esp + 0x85], al
call fcn.004b51f0
mov byte [esp + 0x82], al
xor esi, esi
mov byte [esp + 0x83], 0
push esi
lea ecx, [esp + 0x7d]
call fcn.004b5210
lea ecx, [esp + 0x78]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0x7d]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x4be4c2
push 0xa
lea ecx, [esp + 0x7d]
call fcn.004b5210
lea ecx, [esp + 0x79]
mov byte [eax], 0
call fcn.004b5200
push 0
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x2d2c26b7
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be56d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be550
cmp edx, 0x9ecf6e39
je 0x4be576
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be540
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x555555
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xcd2560f8
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be5ed
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be5d0
cmp edx, 0xf066927
je 0x4be5f6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be5c0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x1a8]
mov eax, dword [edx + 0x24]
push dword [esp + 0x28]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
movaps xmm0, xmmword [esp + 0x850]
mov ecx, 0x4d90b0
movaps xmmword [esp + 0x710], xmm0
push 0x4cb469
mov dword [esp + 0x718], 0x1fb
call fcn.004b74b0
test al, al
je 0x4bed7a
cmp dword [0x4d97c0], 0xfa1
jne 0x4be6de
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0xe02f893f
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be6ad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be690
cmp edx, 0x66ef5b61
je 0x4be6b6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be680
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x828282
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
cmp byte [0x4d9019], cl
je 0x4bea11
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x219f1997
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4be73d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4be720
cmp edx, 0xef559f7d
je 0x4be746
inc dword [esp + 0x14]
add esi, 4
jmp 0x4be710
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x48
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0xa8]
add eax, edi
mov byte [esp + 0xa8], 0x40
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0x61
lea ecx, [esp + 0xa8]
mov byte [esp + 0xa9], al
call fcn.004b51f0
push 0x76
lea ecx, [esp + 0xa8]
mov byte [esp + 0xaa], al
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0xa8]
mov byte [esp + 0xab], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0xa8]
mov byte [esp + 0xac], al
call fcn.004b51f0
push 0x67
lea ecx, [esp + 0xa8]
mov byte [esp + 0xad], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0xa8]
mov byte [esp + 0xae], al
call fcn.004b51f0
push 0x74
lea ecx, [esp + 0xa8]
mov byte [esp + 0xaf], al
call fcn.004b51f0
push 0x72
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb0], al
call fcn.004b51f0
push 0x6f
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb1], al
call fcn.004b51f0
push 0x75
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb2], al
call fcn.004b51f0
push 0x62
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb3], al
call fcn.004b51f0
push 0x6c
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb4], al
call fcn.004b51f0
push 0x65
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb5], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb6], al
call fcn.004b51f0
push 0x73
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb7], al
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0xa8]
mov byte [esp + 0xb8], al
call fcn.004b51f0
mov byte [esp + 0xb5], al
lea ecx, [esp + 0xa4]
push 0x67
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0xa8]
mov byte [esp + 0xba], al
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0xa8]
mov byte [esp + 0xbb], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0xa8]
mov byte [esp + 0xbc], al
call fcn.004b51f0
push 0x67
lea ecx, [esp + 0xa8]
mov byte [esp + 0xbd], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0xa8]
mov byte [esp + 0xbe], al
call fcn.004b51f0
push 0x69
lea ecx, [esp + 0xa8]
mov byte [esp + 0xbf], al
call fcn.004b51f0
push 0x6e
lea ecx, [esp + 0xa8]
mov byte [esp + 0xc0], al
call fcn.004b51f0
push 0x3f
lea ecx, [esp + 0xa8]
mov byte [esp + 0xc1], al
call fcn.004b51f0
mov byte [esp + 0xbe], al
xor esi, esi
mov byte [esp + 0xbf], 0
nop dword [eax + eax]
push esi
lea ecx, [esp + 0xa9]
call fcn.004b5210
lea ecx, [esp + 0xa4]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0xa9]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0x1a
jb 0x4be9a0
push 0x1a
lea ecx, [esp + 0xa9]
call fcn.004b5210
lea ecx, [esp + 0xa5]
mov byte [eax], 0
call fcn.004b5200
push 1
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
jmp 0x4bed1d
mov ecx, dword [esi]
mov edx, 0xa507b692
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bea3e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bea21
cmp edx, 0x1bcf2eee
je 0x4bea47
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bea11
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffc2
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
lea ecx, [esp + 0xc4]
add eax, edi
mov byte [esp + 0xc4], 0x52
mov dword [esp + 0x20], eax
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc5], al
call fcn.004b51f0
push 0xffffffffffffffe7
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc6], al
call fcn.004b51f0
push 0xffffffffffffffed
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc7], al
call fcn.004b51f0
push 0xffffffffffffffe8
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc8], al
call fcn.004b51f0
push 0xffffffffffffffea
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc9], al
call fcn.004b51f0
push 0xffffffffffffffeb
lea ecx, [esp + 0xc4]
mov byte [esp + 0xca], al
call fcn.004b51f0
push 0xffffffffffffffe8
lea ecx, [esp + 0xc4]
mov byte [esp + 0xcb], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0xc4]
mov byte [esp + 0xcc], al
call fcn.004b51f0
push 0xffffffffffffffef
lea ecx, [esp + 0xc4]
mov byte [esp + 0xcd], al
call fcn.004b51f0
push 0xfffffffffffffff0
lea ecx, [esp + 0xc4]
mov byte [esp + 0xce], al
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0xc4]
mov byte [esp + 0xcf], al
call fcn.004b51f0
push 0xffffffffffffffe1
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd0], al
call fcn.004b51f0
push 0xffffffffffffffeb
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd1], al
call fcn.004b51f0
push 0xffffffffffffffe5
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd2], al
call fcn.004b51f0
push 0xffffffffffffffec
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd3], al
call fcn.004b51f0
push 0xfffffffffffffffb
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd4], al
call fcn.004b51f0
mov byte [esp + 0xd1], al
lea ecx, [esp + 0xc0]
push 0x20
call fcn.004b51f0
push 0xfffffffffffffff1
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd6], al
call fcn.004b51f0
push 0x20
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd7], al
call fcn.004b51f0
push 0xffffffffffffffe2
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd8], al
call fcn.004b51f0
push 0xfffffffffffffff5
lea ecx, [esp + 0xc4]
mov byte [esp + 0xd9], al
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0xc4]
mov byte [esp + 0xda], al
call fcn.004b51f0
push 0xffffffffffffffe4
lea ecx, [esp + 0xc4]
mov byte [esp + 0xdb], al
call fcn.004b51f0
push 0xffffffffffffffee
lea ecx, [esp + 0xc4]
mov byte [esp + 0xdc], al
call fcn.004b51f0
push 0xffffffffffffffec
lea ecx, [esp + 0xc4]
mov byte [esp + 0xdd], al
call fcn.004b51f0
push 0x3f
lea ecx, [esp + 0xc4]
mov byte [esp + 0xde], al
call fcn.004b51f0
mov byte [esp + 0xdb], al
xor esi, esi
mov byte [esp + 0xdc], 0
push esi
lea ecx, [esp + 0xc5]
call fcn.004b5210
lea ecx, [esp + 0xc0]
movzx eax, byte [eax]
push eax
call fcn.004b51f0
push esi
lea ecx, [esp + 0xc5]
mov byte [esp + 0x1f], al
call fcn.004b5210
mov cl, byte [esp + 0x1b]
inc esi
mov byte [eax], cl
cmp esi, 0x1b
jb 0x4becb1
push 0x1b
lea ecx, [esp + 0xc5]
call fcn.004b5210
lea ecx, [esp + 0xc1]
mov byte [eax], 0
call fcn.004b5200
push 1
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call dword [esp + 0x30]
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x73e2fc39
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bed71
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bed50
cmp edx, 0x9feb290f
je 0x4beee6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bed40
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xd0125e1c
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bedcd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bedb0
cmp edx, 0x97d9a6a2
je 0x4bedd6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4beda0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x5dc9ff
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x530f5abe
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bee4d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bee30
cmp edx, 0x96c8a38a
je 0x4bee56
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bee20
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 0x24]
lea eax, [eax + ecx*2]
mov ecx, 0x4d90b0
movzx edx, word [eax + edi]
mov eax, dword [esi + 0x1c]
lea eax, [eax + edx*4]
mov esi, dword [eax + edi]
add esi, edi
call fcn.004b5db0
push 1
lea ecx, [esp + 0x714]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call esi
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0x540f5c51
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4beedd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4beec0
cmp edx, 0x1935c67
je 0x4beee6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4beeb0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x555555
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
cmp dword [0x4d97c0], 0xfa2
mov dword [esp + 0x710], 0x49
mov dword [esp + 0x714], 0x195
jne 0x4befb0
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x33541cea
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bef7f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bef62
cmp edx, 0x42eff04
je 0x4bef88
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bef52
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x828282
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
cmp byte [0x4d9019], cl
je 0x4bf094
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, 0xbe8410be
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf00d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4beff0
cmp edx, 0x4f11658a
je 0x4bf016
inc dword [esp + 0x14]
add esi, 4
jmp 0x4befe0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov cl, 0x48
mov edx, dword [eax + edi]
add edx, edi
mov dword [esp + 0x198], 0x252d1a48
mov dword [esp + 0x19c], 0x2d2a252d
xor eax, eax
mov dword [esp + 0x1a0], 0x2d05683a
mov byte [esp + 0x1a4], 0
xor byte [esp + eax + 0x199], cl
inc eax
cmp eax, 0xb
jae 0x4bf076
mov cl, byte [esp + 0x198]
jmp 0x4bf060
lea eax, [esp + 0x710]
mov byte [esp + 0x1a4], 0
push 0
push eax
lea eax, [esp + 0x1a1]
jmp 0x4bf12d
mov ecx, dword [esi]
mov edx, 0x3dde1fe1
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf0c1
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf0a4
cmp edx, 0x4a99305b
je 0x4bf0ca
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf094
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d3840]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov edx, dword [eax + edi]
add edx, edi
xor ecx, ecx
movups xmmword [esp + 0x280], xmm0
nop dword [eax + eax]
mov al, byte [esp + 0x280]
xor byte [esp + ecx + 0x281], al
inc ecx
cmp ecx, 0xe
jb 0x4bf100
lea eax, [esp + 0x710]
mov byte [esp + 0x28f], 0
push 0
push eax
lea eax, [esp + 0x289]
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call edx
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x4ab708e8
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf181
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf164
cmp edx, 0xa5d9ffe
je 0x4bf18a
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf154
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x555555
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
cmp dword [0x4d97c0], 0xfa3
mov dword [esp + 0x710], 0xe6
mov dword [esp + 0x714], 0x195
jne 0x4bf254
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x97fae3ab
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf223
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf206
cmp edx, 0xed9714d
je 0x4bf22c
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf1f6
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push 0x828282
push dword [esp + 0x28]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9870]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
cmp byte [0x4d9019], cl
je 0x4bf322
nop
mov ecx, dword [esi]
mov edx, 0xb8dbb57
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf2ad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf290
cmp edx, 0xbf97d23d
je 0x4bf2b6
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf280
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d3cf0]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov edx, dword [eax + edi]
add edx, edi
mov word [esp + 0x26c], 0x4b
movups xmmword [esp + 0x25c], xmm0
xor ecx, ecx
nop
mov al, byte [esp + 0x25c]
xor byte [esp + ecx + 0x25d], al
inc ecx
cmp ecx, 0x10
jb 0x4bf2f0
lea eax, [esp + 0x710]
mov byte [esp + 0x26d], 0
push 0
push eax
lea eax, [esp + 0x265]
jmp 0x4bf3bd
mov ecx, dword [esi]
mov edx, 0x75b94628
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf34f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf332
cmp edx, 0xcab33ae0
je 0x4bf358
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf322
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
movaps xmm0, xmmword [0x4d3810]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov edx, dword [eax + edi]
add edx, edi
xor ecx, ecx
movups xmmword [esp + 0x270], xmm0
nop word [eax + eax]
mov al, byte [esp + 0x270]
xor byte [esp + ecx + 0x271], al
inc ecx
cmp ecx, 0xe
jb 0x4bf390
lea eax, [esp + 0x710]
mov byte [esp + 0x27f], 0
push 0
push eax
lea eax, [esp + 0x279]
push 0xffffffffffffffff
push eax
push dword [esp + 0x34]
call edx
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0xad6eafa4
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf411
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf3f4
cmp edx, 0xe95ea26c
je 0x4bf41a
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf3e4
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x1a8]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov edi, dword [0x4d9880]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [esp + 0x1a8], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x6958f444
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4bf48e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4bf471
cmp edx, 0xd4ca9c8c
je 0x4bf497
inc dword [esp + 0x14]
add esi, 4
jmp 0x4bf461
call dword [sym.imp.gdiplus.dll_GdipDeleteGraphics]
mov ecx, dword [esp + 0x87c]
pop edi
pop esi
xor ecx, esp
call fcn.004c8789
mov esp, ebp
pop ebp
ret