Function at 0x41aef0
Capabilities:
Encode data using base64

Disassembly:
mov eax, dword [0x4827f4]
inc eax
mov dword [0x4827f4], eax
xor eax, 0xe6f577ba
cmp eax, 0x90000184
jl 0x41af0c
mov eax, dword [0x48074c]
mov eax, dword [0x481720]
or eax, 0x89af8f30
cmp eax, 0xee8478b4
jb 0x41af31
mov eax, dword [0x482adc]
lea ecx, [eax - 1]
mov dword [0x482adc], ecx
and dword [0x48044c], eax
mov eax, dword [0x481fb0]
cmp eax, 0xb3a04ff2
jne 0x41af52
mov eax, dword [0x48197c]
imul eax, eax, 0x6f44aeee
add eax, 0x9ec4f28b
mov dword [0x480f00], eax
push ebp
push ebx
push edi
push esi
sub esp, 0x30
mov dword [0x480d3c], 0x6f7fef7d
mov eax, dword [0x482ae4]
mov ecx, dword [0x4814ec]
dec ecx
mov dword [0x4814ec], ecx
sub eax, ecx
mov ecx, dword [0x481c84]
imul ecx, eax
mov dword [0x481c84], ecx
mov ax, word [0x483546]
cwde
mov ecx, dword [0x4803a8]
imul ecx, eax
mov dword [0x4803a8], ecx
mov dword [esp + 4], 0x41
mov dword [esp], 0x609a
call fcn.0044b290
mov dword [esp + 0x18], eax
mov ax, word [0x484294]
add eax, 0x587b
mov word [0x484294], ax
mov dword [esp + 4], 4
mov dword [esp], 0x18e2
call fcn.0044b290
mov ebx, eax
mov eax, dword [0x480c8c]
dec eax
mov dword [0x480c8c], eax
and eax, 0xe0cd8c02
mov ecx, dword [0x4825fc]
add ecx, 0x5e1abb50
cmp eax, ecx
jge 0x41b005
xor dword [0x480a28], 0xd9772b16
mov dword [esp + 4], ebx
lea eax, [esp + 0x25]
mov dword [esp], eax
call fcn.004527f0
add dword [0x482e2c], 0xc4140c17
mov dword [esp + 4], 4
mov dword [esp], 0x1d22
call fcn.0044b290
mov edi, eax
mov eax, dword [0x480810]
add eax, 0x5fd25cf0
mov ecx, dword [0x482270]
lea edx, [ecx + 1]
mov dword [0x482270], edx
sub eax, ecx
xor dword [0x48272c], eax
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41b0b3
or dword [0x481524], 0x81e1fefa
mov byte [ebx], 0
mov byte [ebx + 1], 0
mov byte [ebx + 2], 0
mov byte [ebx + 3], 0
mov byte [ebx + 4], 0
mov byte [ebx + 5], 0
mov byte [ebx + 6], 0
mov byte [ebx + 7], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], ebx
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
mov eax, dword [0x481f08]
lea ecx, [eax - 1]
mov dword [0x481f08], ecx
cmp eax, 0x4c391dab
jg 0x41b133
xor dword [0x480a70], 0xdd55e317
mov dword [esp + 4], edi
lea eax, [esp + 0x21]
mov dword [esp], eax
call fcn.004527f0
mov dword [0x4812a0], 0x5c63cc79
mov dword [esp + 4], 4
mov dword [esp], 0x4b9e
call fcn.0044b290
mov ebx, eax
add dword [0x4812dc], 0x7a8cc91f
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41b1ca
or dword [0x481524], 0x81e1fefa
mov byte [edi], 0
mov byte [edi + 1], 0
mov byte [edi + 2], 0
mov byte [edi + 3], 0
mov byte [edi + 4], 0
mov byte [edi + 5], 0
mov byte [edi + 6], 0
mov byte [edi + 7], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], edi
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
mov ax, word [0x4834f0]
inc eax
mov word [0x4834f0], ax
mov dword [esp + 4], ebx
lea eax, [esp + 0x1d]
mov dword [esp], eax
call fcn.004527f0
mov eax, dword [0x4804fc]
dec eax
mov dword [0x4804fc], eax
cmp eax, 0xfe2f8fbe
jl 0x41b261
mov eax, dword [0x4820a8]
jmp 0x41b271
mov eax, dword [0x4805b4]
imul eax, eax, 0x669cc3ab
mov dword [0x4805b4], eax
mov esi, dword [esp + 0x48]
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41b2d2
or dword [0x481524], 0x81e1fefa
mov byte [ebx], 0
mov byte [ebx + 1], 0
mov byte [ebx + 2], 0
mov byte [ebx + 3], 0
mov byte [ebx + 4], 0
mov byte [ebx + 5], 0
mov byte [ebx + 6], 0
mov byte [ebx + 7], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], ebx
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
mov ax, word [0x483b4e]
add eax, 0x2f0c
mov word [0x483b4e], ax
test esi, esi
je 0x41b892
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x50]
mov bl, byte [esp + 0x4c]
mov esi, dword [esp + 0x44]
xor ebp, ebp
nop
nop
mov dword [esp + 0x14], esi
mov ax, word [0x484210]
cwde
imul eax, eax, 0x58666052
mov dword [0x480bec], eax
or dword [0x482d40], 0xff5ee4e6
mov al, byte [esi]
mov byte [esp + ebp + 0x2d], al
mov ax, word [0x483d76]
and eax, 0xc8e8
mov word [0x483d76], ax
inc ebp
add dword [0x481be0], 0x59d399d6
mov eax, dword [0x482914]
imul eax, eax, 0x71080e2e
or eax, 0x9cfe7a5b
mov ecx, dword [0x48232c]
sar ecx, 6
add ecx, 0xeb560c7b
xor ecx, 0x3da53607
cmp eax, ecx
jne 0x41b3e0
or dword [0x4803ac], 0x5ffd32f1
jmp 0x41b3f9
mov eax, dword [0x482d10]
lea ecx, [eax + 1]
mov dword [0x482d10], ecx
imul eax, eax, 0x25e21d7a
mov dword [0x480a78], eax
dec dword [esp + 0x10]
cmp ebp, 3
jne 0x41b772
mov dword [0x482964], 0xd0180641
mov al, byte [esp + 0x2d]
shr al, 2
mov byte [esp + 0x29], al
mov eax, dword [0x481e18]
lea ecx, [eax + 1]
mov dword [0x481e18], ecx
mov ecx, dword [0x481e00]
imul ecx, eax
mov dword [0x481e00], ecx
mov al, byte [esp + 0x2d]
shl al, 4
and al, 0x30
mov byte [esp + 0x2a], al
mov ax, word [0x483fce]
cwde
and eax, 0xe4e6759e
add dword [0x480b7c], eax
mov al, byte [esp + 0x2e]
shr al, 4
add byte [esp + 0x2a], al
mov dword [0x481ccc], 0xeafefb7f
mov al, byte [esp + 0x2e]
shl al, 2
and al, 0x3c
mov byte [esp + 0x2b], al
mov eax, dword [0x481424]
inc eax
mov dword [0x481424], eax
xor eax, 0x3ced
mov cx, word [0x483e9e]
and ecx, eax
mov word [0x483e9e], cx
mov al, byte [esp + 0x2f]
shr al, 6
add byte [esp + 0x2b], al
mov eax, dword [0x48057c]
mov word [0x483e22], 0xf906
mov al, byte [esp + 0x2f]
and al, 0x3f
mov byte [esp + 0x2c], al
mov eax, dword [0x481b50]
mov ecx, dword [0x482cc0]
xor ecx, eax
and dword [0x482624], ecx
mov ax, word [0x48378c]
cwde
xor eax, 0xd6d09e3e
cmp eax, 0x194b9a9d
jl 0x41b500
mov eax, dword [0x482d68]
inc eax
mov dword [0x482d68], eax
imul eax, eax, 0xe16b981d
add eax, 0x25f2ebb2
or dword [0x482ad0], eax
jmp 0x41b510
mov eax, dword [0x480ed8]
imul eax, eax, 0x4487ff5b
mov dword [0x480ed8], eax
xor ebp, ebp
jmp 0x41b5e0
mov eax, dword [0x4825a0]
xor dword [0x481324], 0x1a6b79d1
mov eax, dword [0x4801e8]
mov ecx, dword [0x480ee0]
sub ecx, eax
mov dword [0x480ee0], ecx
lea eax, [esp + 0x21]
mov esi, edi
mov edi, eax
mov dword [esp], edi
call fcn.0044f730
mov dword [esp + 4], eax
mov dword [esp], edi
mov edi, esi
mov bl, byte [esp + 0x4c]
mov ecx, edi
call fcn.00408330
sub esp, 8
mov word [0x4835ce], 0x675d
mov eax, dword [0x481548]
lea ecx, [eax - 1]
mov dword [0x481548], ecx
mov ecx, dword [0x4805e0]
imul ecx, eax
mov dword [0x4805e0], ecx
mov eax, dword [0x481ce8]
lea ecx, [eax + 1]
mov dword [0x481ce8], ecx
mov ecx, dword [0x480894]
imul ecx, ecx, 0x91a26ca2
cmp eax, ecx
mov esi, dword [esp + 0x14]
jle 0x41b5c8
mov ax, word [0x483706]
lea ecx, [eax + 1]
mov word [0x483706], cx
or eax, 0xeb20
mov word [0x4836ca], ax
jmp 0x41b70f
mov eax, dword [0x480dc4]
or eax, 0x313e06fa
mov dword [0x482cb8], eax
jmp 0x41b70f
or dword [0x482f24], 0x7aaf6204
test bl, bl
je 0x41b690
movzx eax, byte [esp + ebp + 0x29]
cmp eax, 0x3e
jb 0x41b690
xor dword [0x482234], 0x4f7bfcf4
movzx eax, byte [esp + ebp + 0x29]
cmp eax, 0x3e
jne 0x41b517
add dword [0x480ab8], 0x83d68f26
xor dword [0x481324], 0x1a6b79d1
mov eax, dword [0x4801e8]
mov ecx, dword [0x480ee0]
sub ecx, eax
mov dword [0x480ee0], ecx
lea esi, [esp + 0x25]
mov dword [esp], esi
call fcn.0044f730
mov dword [esp + 4], eax
mov dword [esp], esi
mov ecx, edi
call fcn.00408330
sub esp, 8
mov word [0x4835ce], 0x675d
mov eax, dword [0x4821bc]
mov eax, dword [0x4809f4]
shl eax, 7
xor eax, 0x5e5bd550
and dword [0x480dcc], eax
jmp 0x41b586
mov ax, word [0x4839be]
cwde
imul eax, eax, 0x27d13602
cmp eax, 0xe73c9c76
je 0x41b6d4
mov eax, dword [0x482998]
xor eax, 0xf69a54be
cmp eax, 0x80ac79d4
jl 0x41b6d4
mov eax, dword [0x4802d0]
imul eax, eax, 0xef81ec34
mov ecx, dword [0x4804a0]
or ecx, eax
or ecx, 0xaab02970
mov dword [0x4804a0], ecx
movzx eax, byte [esp + ebp + 0x29]
mov ecx, dword [esp + 0x18]
movsx eax, byte [ecx + eax]
mov dword [esp + 4], eax
mov dword [esp], 1
mov ecx, edi
call fcn.0042f4e0
sub esp, 8
mov eax, dword [0x4822ec]
lea ecx, [eax - 1]
mov dword [0x4822ec], ecx
add eax, 0x6f13d67b
or dword [0x482a80], eax
mov ax, word [0x48317a]
cwde
xor eax, 0xe47b91f1
mov ecx, dword [0x480648]
imul ecx, eax
mov dword [0x480648], ecx
inc ebp
mov eax, dword [0x481ca8]
inc eax
mov dword [0x481ca8], eax
cmp eax, 0xe3fd1677
jg 0x41b747
and dword [0x481bd4], 0xe1821763
cmp ebp, 4
jne 0x41b5e0
mov eax, dword [0x481ee4]
imul eax, eax, 0x75fb527d
mov dword [0x481ee4], eax
inc dword [0x482db8]
or dword [0x482050], 0xe5b6efcb
xor ebp, ebp
inc esi
mov eax, dword [0x4815e4]
imul eax, eax, 0xe1b944e
mov dword [0x4815e4], eax
cmp dword [esp + 0x10], 0
jne 0x41b360
and dword [0x480408], 0x2237c424
test ebp, ebp
je 0x41bc1a
mov eax, dword [0x482654]
lea ecx, [eax - 1]
mov dword [0x482654], ecx
add eax, 0x17d23a2
or eax, 0xf74d7fd9
mov cx, word [0x483bae]
movsx ecx, cx
imul ecx, ecx, 0xe6ac0678
mov edx, dword [0x4827f8]
xor edx, ecx
cmp eax, edx
je 0x41b7fe
mov eax, dword [0x48269c]
mov cx, word [0x48301c]
movsx ecx, cx
mov edx, 0x9aa128c2
sub edx, ecx
xor edx, 0xe4b09442
cmp eax, edx
jle 0x41b7fe
mov dword [0x481fd4], 0x876f1579
add dword [0x482a28], 0x48f55bc8
cmp ebp, 2
jg 0x41b87a
mov eax, ebp
nop
mov ecx, dword [0x481e24]
add ecx, 0xb2b469ce
and dword [0x482b8c], ecx
mov byte [esp + eax + 0x2d], 0
mov ecx, dword [0x4825d8]
sar ecx, 7
mov edx, 0xdb1a88
sub edx, ecx
or edx, 0xe8567e00
mov dword [0x481f40], edx
inc eax
mov ecx, dword [0x480854]
lea edx, [ecx + 1]
mov dword [0x480854], edx
add ecx, 0x743b4ad1
cmp ecx, 0x143e21f8
jl 0x41b875
mov cx, word [0x48433e]
or ecx, 0x371a
mov word [0x48433e], cx
cmp eax, 3
jne 0x41b810
mov eax, dword [0x482c7c]
cmp eax, 0xe7688189
jne 0x41b8a1
add dword [0x4807ac], 0xffb79ffe
jmp 0x41b8ab
and dword [0x480408], 0x2237c424
jmp 0x41bc1a
mov dword [0x481d40], 0x4dffbbc7
mov al, byte [esp + 0x2d]
shr al, 2
mov byte [esp + 0x29], al
mov eax, dword [0x481d60]
imul eax, eax, 0xe5fb6c3c
mov dword [0x481d60], eax
mov al, byte [esp + 0x2d]
shl al, 4
and al, 0x30
mov byte [esp + 0x2a], al
add dword [0x480fb4], 0xc38c2363
mov al, byte [esp + 0x2e]
shr al, 4
add byte [esp + 0x2a], al
mov ax, word [0x48464e]
mov al, byte [esp + 0x2e]
shl al, 2
and al, 0x3c
mov byte [esp + 0x2b], al
xor dword [0x48299c], 0x8e6bc512
mov al, byte [esp + 0x2f]
shr al, 6
add byte [esp + 0x2b], al
mov eax, dword [0x481508]
imul eax, eax, 0xd73f1fbf
mov dword [0x481508], eax
mov al, byte [esp + 0x2f]
and al, 0x3f
mov byte [esp + 0x2c], al
mov ax, word [0x483e26]
or eax, 0xf7b8
mov word [0x483e26], ax
xor dword [0x482550], 0x90eb037b
add dword [0x480cc0], 0x96952be9
test ebp, ebp
js 0x41bb28
lea ebx, [ebp + 1]
lea edi, [esp + 0x29]
nop
nop
mov eax, dword [0x48046c]
imul eax, eax, 0x7746df66
and dword [0x482ab8], eax
cmp byte [esp + 0x4c], 0
je 0x41ba20
movzx eax, byte [edi]
cmp eax, 0x3e
jb 0x41ba20
mov eax, dword [0x480d8c]
inc eax
mov dword [0x480d8c], eax
xor dword [0x48093c], eax
movzx eax, byte [edi]
cmp eax, 0x3e
jne 0x41ba6c
mov ax, word [0x483752]
or dword [0x481594], 0xbbc7df7f
xor dword [0x481324], 0x1a6b79d1
mov eax, dword [0x4801e8]
mov ecx, dword [0x480ee0]
sub ecx, eax
mov dword [0x480ee0], ecx
lea eax, [esp + 0x25]
mov esi, eax
mov dword [esp], esi
call fcn.0044f730
mov dword [esp + 4], eax
mov dword [esp], esi
mov ecx, dword [esp + 0x50]
call fcn.00408330
sub esp, 8
mov word [0x4835ce], 0x675d
mov eax, dword [0x4802f0]
cmp eax, 0x5c16a820
jne 0x41bae2
add dword [0x480ce4], 0x9b453142
jmp 0x41bae2
xor dword [0x480ea4], 0xb198d4a8
movzx eax, byte [edi]
mov ecx, dword [esp + 0x18]
movsx eax, byte [ecx + eax]
mov dword [esp + 4], eax
mov dword [esp], 1
mov ecx, dword [esp + 0x50]
call fcn.0042f4e0
sub esp, 8
mov eax, dword [0x482c68]
mov ecx, dword [0x4818fc]
and ecx, eax
mov ax, word [0x483a22]
or eax, ecx
mov word [0x483a22], ax
jmp 0x41baf8
or dword [0x481fe8], 0xbf6f3fdd
xor dword [0x481324], 0x1a6b79d1
mov eax, dword [0x4801e8]
mov ecx, dword [0x480ee0]
sub ecx, eax
mov dword [0x480ee0], ecx
lea eax, [esp + 0x21]
mov esi, eax
mov dword [esp], esi
call fcn.0044f730
mov dword [esp + 4], eax
mov dword [esp], esi
mov ecx, dword [esp + 0x50]
call fcn.00408330
sub esp, 8
mov word [0x4835ce], 0x675d
mov eax, dword [0x480a60]
lea ecx, [eax - 1]
mov dword [0x480a60], ecx
mov cx, word [0x48409e]
mov edx, 0xffff53c9
sub edx, eax
add edx, ecx
mov word [0x48409e], dx
mov eax, dword [0x480dec]
imul eax, eax, 0xe51ceb22
and eax, 0xdaafa7c6
add dword [0x481dd0], eax
or dword [0x48021c], 0x1a49c89d
mov eax, dword [0x481aa8]
lea ecx, [eax - 1]
mov dword [0x481aa8], ecx
xor dword [0x4826bc], eax
add dword [0x480cc0], 0x96952be9
inc edi
dec ebx
jne 0x41b960
add dword [0x4824a4], 0xd6e2094a
cmp ebp, 2
lea ebx, [esp + 0x1d]
jg 0x41bc10
mov edi, 3
sub edi, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
or dword [0x482f9c], 0x2bf379bc
mov eax, dword [0x4828f0]
not eax
mov ecx, dword [0x481c28]
imul ecx, eax
mov dword [0x481c28], ecx
cmp byte [esp + 0x4c], 0
je 0x41bbd0
add dword [0x482e5c], 0x6cb082ec
xor dword [0x481324], 0x1a6b79d1
mov eax, dword [0x4801e8]
mov ecx, dword [0x480ee0]
sub ecx, eax
mov dword [0x480ee0], ecx
mov dword [esp], ebx
call fcn.0044f730
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, dword [esp + 0x50]
call fcn.00408330
sub esp, 8
mov word [0x4835ce], 0x675d
add dword [0x4822cc], 0xf7d3091a
jmp 0x41bbff
xor dword [0x482fa8], 0x1e283595
mov dword [esp + 4], 0x3d
mov dword [esp], 1
mov ecx, dword [esp + 0x50]
call fcn.0042f4e0
sub esp, 8
add dword [0x4812ac], 0x72a15a7c
add dword [0x482a50], 0xe5074db6
dec edi
jne 0x41bb50
xor dword [0x4817f0], 0x1e8331ce
or dword [0x481c44], 0x214606d9
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41bc81
or dword [0x481524], 0x81e1fefa
mov esi, dword [esp + 0x18]
mov byte [esi], 0
mov byte [esi + 1], 0
mov byte [esi + 2], 0
mov byte [esi + 3], 0
mov byte [esi + 4], 0
mov byte [esi + 5], 0
mov byte [esi + 6], 0
mov byte [esi + 7], 0
mov byte [esi + 8], 0
mov byte [esi + 9], 0
mov byte [esi + 0xa], 0
mov byte [esi + 0xb], 0
mov byte [esi + 0xc], 0
mov byte [esi + 0xd], 0
mov byte [esi + 0xe], 0
mov byte [esi + 0xf], 0
mov byte [esi + 0x10], 0
mov byte [esi + 0x11], 0
mov byte [esi + 0x12], 0
mov byte [esi + 0x13], 0
mov byte [esi + 0x14], 0
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 0
mov byte [esi + 0x17], 0
mov byte [esi + 0x18], 0
mov byte [esi + 0x19], 0
mov byte [esi + 0x1a], 0
mov byte [esi + 0x1b], 0
mov byte [esi + 0x1c], 0
mov byte [esi + 0x1d], 0
mov byte [esi + 0x1e], 0
mov byte [esi + 0x1f], 0
mov byte [esi + 0x20], 0
mov byte [esi + 0x21], 0
mov byte [esi + 0x22], 0
mov byte [esi + 0x23], 0
mov byte [esi + 0x24], 0
mov byte [esi + 0x25], 0
mov byte [esi + 0x26], 0
mov byte [esi + 0x27], 0
mov byte [esi + 0x28], 0
mov byte [esi + 0x29], 0
mov byte [esi + 0x2a], 0
mov byte [esi + 0x2b], 0
mov byte [esi + 0x2c], 0
mov byte [esi + 0x2d], 0
mov byte [esi + 0x2e], 0
mov byte [esi + 0x2f], 0
mov byte [esi + 0x30], 0
mov byte [esi + 0x31], 0
mov byte [esi + 0x32], 0
mov byte [esi + 0x33], 0
mov byte [esi + 0x34], 0
mov byte [esi + 0x35], 0
mov byte [esi + 0x36], 0
mov byte [esi + 0x37], 0
mov byte [esi + 0x38], 0
mov byte [esi + 0x39], 0
mov byte [esi + 0x3a], 0
mov byte [esi + 0x3b], 0
mov byte [esi + 0x3c], 0
mov byte [esi + 0x3d], 0
mov byte [esi + 0x3e], 0
mov byte [esi + 0x3f], 0
mov byte [esi + 0x40], 0
mov byte [esi + 0x41], 0
mov byte [esi + 0x42], 0
mov byte [esi + 0x43], 0
mov byte [esi + 0x44], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], esi
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
add dword [0x4825bc], 0x13812211
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41be37
or dword [0x481524], 0x81e1fefa
mov byte [esp + 0x25], 0
mov byte [esp + 0x26], 0
mov byte [esp + 0x27], 0
mov byte [esp + 0x28], 0
mov dword [0x4805ac], 0xc0f2c3ab
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41bea8
or dword [0x481524], 0x81e1fefa
mov byte [esp + 0x21], 0
mov byte [esp + 0x22], 0
mov byte [esp + 0x23], 0
mov byte [esp + 0x24], 0
add dword [0x481210], 0xbc8fefe0
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41bf19
or dword [0x481524], 0x81e1fefa
mov byte [esp + 0x1d], 0
mov byte [esp + 0x1e], 0
mov byte [esp + 0x1f], 0
mov byte [esp + 0x20], 0
mov ax, word [0x484572]
add eax, 0xffffcc36
mov word [0x484572], ax
add esp, 0x30
pop esi
pop edi
pop ebx
pop ebp
ret