Function at 0x4134b8
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
add dword [0x43b24c], 0x111c9207
sub esp, 0x18
mov dword [0x43b4bc], 0x37c3c4f6
mov eax, dword [0x43b6f0]
sar eax, 0xa
or eax, 0xbefc9760
add dword [0x43869c], eax
mov eax, dword [0x43ad7c]
not eax
imul eax, eax, 0x2e43f8f0
xor eax, 0x8e1c234d
cmp eax, 0xc96f04f0
jg 0x413516
movsx eax, word [0x43568a]
cmp eax, 0x466d7aaf
jne 0x413516
xor dword [0x436f0c], 0xcd2a9b4f
and dword [0x43a0e4], 0xddb5ba78
mov ecx, dword [0x43a4d8]
movzx eax, word [0x43353e]
and ecx, 0xfac9469e
push ebx
push esi
imul eax, ecx
xor esi, esi
push edi
push 0x41
push 0x7e3
mov word [0x43353e], ax
call fcn.0042b1e6
movsx ecx, word [0x4365e8]
mov edx, 0x5127854c
imul ecx, ecx, 0x6311e400
push 4
push 0x2266
mov dword [ebp - 0xc], eax
sub edx, ecx
xor dword [0x437b40], edx
call fcn.0042b1e6
mov edx, dword [0x43a924]
mov edi, eax
movzx ecx, word [0x435a1a]
lea eax, [ebp - 0x10]
sar edx, 3
add edx, 0x612d5aa8
xor edx, 0x62d22d41
and ecx, edx
push edi
mov word [0x435a1a], cx
push eax
call fcn.0042cae2
mov eax, dword [0x43e36c]
add esp, 0x18
sub eax, 0x1c19e4e1
cmp eax, 0xe795f3a4
jne 0x4135d8
inc word [0x43316e]
mov ax, word [0x43316e]
cwde
add eax, 0x4c2e72db
xor eax, 0xba88763f
mov dword [0x43e0e4], eax
push 4
push 0x7dd
call fcn.0042b1e6
movzx ecx, word [0x432ab6]
mov ebx, eax
or ecx, 0xb99131a2
push edi
mov word [0x432ab6], cx
push 4
call fcn.0042c328
and dword [0x438de4], 0x4a818a3e
lea eax, [ebp - 0x14]
push ebx
push eax
call fcn.0042cae2
inc dword [0x439154]
mov ecx, dword [0x439154]
movzx eax, word [0x435494]
or ecx, 0xcd3dab3b
add ecx, eax
push 4
mov word [0x435494], cx
push 0x3282
call fcn.0042b1e6
mov ecx, dword [0x436f84]
add esp, 0x20
shl ecx, 7
mov edi, eax
xor ecx, 0xffb5ebff
or ecx, 0x3b35a86e
cmp ecx, 0x9ab6f216
jle 0x413687
movsx ecx, word [0x43460e]
mov edx, 0xf3defe1e
sub edx, ecx
and edx, 0x3f4b87c1
mov dword [0x43d0d0], edx
dec word [0x43460e]
push ebx
push 4
call fcn.0042c328
or dword [0x43a8e8], 0x1e4d7e06
lea eax, [ebp - 0x18]
push edi
push eax
call fcn.0042cae2
imul eax, dword [0x43a610], 0x336110ba
push edi
push 4
mov dword [0x43a610], eax
call fcn.0042c328
movzx eax, word [0x436036]
add esp, 0x18
mov edi, dword [ebp + 0xc]
xor eax, 0xda3d2fe1
mov word [0x436036], ax
push 3
pop ebx
jmp 0x4139c0
movsx eax, word [0x432b36]
sub eax, 0x679810b8
dec word [0x432b36]
cmp eax, 0xbccfbff1
jne 0x413700
and dword [0x43d634], 0xb8ec7c1b
jmp 0x41370a
add dword [0x43d24c], 0x8b28052d
add dword [0x43bdd4], 0xdfe3ded4
dec edi
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], edi
mov al, byte [edx]
mov byte [ebp + esi - 4], al
mov eax, dword [0x43c7f4]
shl eax, 5
xor dword [0x436c54], eax
inc esi
movsx eax, word [0x4363ae]
cmp eax, 0xd77d7f7b
jle 0x413760
mov eax, dword [0x43b014]
mov ecx, 0x6994602a
sub ecx, eax
mov eax, dword [0x437a4c]
add eax, ecx
mov ecx, dword [0x43da3c]
imul ecx, eax
mov dword [0x43da3c], ecx
movsx eax, word [0x436502]
inc edx
mov dword [ebp + 8], edx
cmp eax, 0x108a0a4
jge 0x413782
mov eax, dword [0x438750]
mov dword [0x43e6a8], eax
inc dword [0x438750]
cmp esi, ebx
jne 0x4139b6
and dword [0x439888], 0xabea3099
xor esi, esi
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
mov eax, dword [0x438e48]
mov dword [0x438c50], eax
movsx ecx, word [0x435f50]
mov al, byte [ebp - 4]
and al, 3
shl ecx, 5
shl al, 4
sub ecx, 0x40fb5f32
mov byte [ebp - 7], al
xor ecx, 0xc96626ad
movzx eax, word [0x43391e]
imul eax, ecx
mov ecx, 0x47fa10a0
mov bl, byte [ebp + 0x10]
mov edi, dword [ebp - 0xc]
mov word [0x43391e], ax
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
mov eax, dword [0x438c3c]
sub ecx, eax
mov eax, dword [0x43b4a4]
or eax, ecx
mov word [0x436182], ax
mov al, byte [ebp - 3]
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
add dword [0x4386a0], 0xc85dc416
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
and dword [0x437234], 0x56671f97
mov al, byte [ebp - 2]
and al, 0x3f
mov byte [ebp - 5], al
imul eax, dword [0x43c114], 0x2f7f217d
mov dword [0x43c114], eax
movzx eax, word [0x436556]
xor eax, 0xc7da0709
mov word [0x436556], ax
movzx eax, word [0x435520]
sub eax, 0x2a9abd64
mov word [0x435520], ax
test bl, bl
je 0x413914
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x413914
add dword [0x43c12c], 0x1bf252e9
cmp al, 0x3e
jne 0x4138d7
inc dword [0x437d90]
mov eax, dword [0x437d90]
imul ecx, eax, 0x3bee9450
movzx eax, word [0x4336f0]
and ecx, 0x595c4ff2
add ecx, eax
lea eax, [ebp - 0x10]
mov word [0x4336f0], cx
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00402c06
cmp dword [0x439ffc], 0x69b9a0e0
jge 0x413908
imul eax, dword [0x43bf78], 0x6d810042
mov dword [0x43bf78], eax
jmp 0x413908
dec dword [0x43a080]
mov eax, dword [0x43a080]
mov ecx, dword [ebp + 0x14]
xor eax, 0x80f0577f
add eax, dword [0x438aa4]
mov dword [0x438aa4], eax
lea eax, [ebp - 0x14]
push eax
call fcn.00402c06
xor dword [0x43e770], 0x500902a0
add dword [0x43d070], 0x22ff13f6
jmp 0x41394d
movsx eax, word [0x4361cc]
sub eax, 0x6da8e923
cmp eax, 0xbc8a6752
jle 0x413931
xor dword [0x438680], 0x23c1be5
movzx eax, byte [ebp + esi - 8]
mov ecx, dword [ebp + 0x14]
movzx eax, byte [eax + edi]
push eax
call fcn.00408a55
xor dword [0x43c920], 0xfdffcffe
mov eax, dword [0x438ee8]
or eax, 0xc33cd679
cmp eax, 0xdc337f07
jg 0x413970
movzx eax, word [0x433a8e]
and eax, 0xb7c02a70
mov word [0x4349e2], ax
mov eax, dword [0x43d940]
inc esi
sub eax, dword [0x436cf8]
mov dword [0x43d940], eax
cmp esi, 4
jne 0x413853
movzx eax, word [0x43482e]
xor esi, esi
mov edi, dword [ebp + 0xc]
and eax, 0xd2aff37b
mov word [0x43482e], ax
movzx eax, word [0x4334c8]
and eax, 0xe302befb
push 3
mov word [0x4334c8], ax
pop ebx
mov dword [0x43b360], 0xcdedae52
test edi, edi
jne 0x4136da
mov eax, 0xffffd595
mov word [0x433cb0], ax
test esi, esi
je 0x413e58
mov eax, dword [0x43ade4]
add eax, 0x6975b270
and dword [0x43a1f0], eax
mov ecx, dword [0x43a30c]
mov eax, dword [0x43be3c]
sub ecx, 0x39d157fe
or ecx, 0x8b6d05b5
imul eax, ecx
mov dword [0x43be3c], eax
cmp esi, ebx
jge 0x413a6b
mov edi, ebx
lea eax, [ebp - 4]
sub edi, esi
add eax, esi
push edi
push 0
push eax
call fcn.0041cb3c
add esp, 0xc
and dword [0x43d9d8], 0x208b0011
xor dword [0x436bcc], 0xa7556bfc
movsx eax, word [0x434f84]
shl eax, 6
xor eax, 0x2c0509d8
or eax, 0x9180d624
cmp eax, 0x886509e6
jge 0x413a68
mov ecx, dword [0x43a224]
mov eax, 0xaf11aec6
shl ecx, 8
sub eax, ecx
add dword [0x437670], eax
dec edi
jne 0x413a23
movzx eax, word [0x4367c8]
add eax, 0x5c099979
mov word [0x4367c8], ax
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
mov eax, dword [0x4375a0]
or eax, 0x44fda541
xor dword [0x43cbc0], eax
mov al, byte [ebp - 4]
and al, 3
shl al, 4
mov byte [ebp - 7], al
movzx eax, word [0x436136]
add eax, 0x32a81e1c
mov word [0x436136], ax
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
cmp dword [0x43c35c], 0xdd7ddeef
jle 0x413adc
movzx eax, word [0x433794]
or eax, 0x7c5afee4
mov word [0x433794], ax
jmp 0x413b07
inc dword [0x43c244]
mov ecx, dword [0x43c244]
inc dword [0x43c4c4]
mov eax, dword [0x43c4c4]
sub ecx, eax
xor ecx, 0xa7a7d619
and ecx, dword [0x43ce10]
mov dword [0x43ce10], ecx
mov al, byte [ebp - 3]
xor edi, edi
mov bl, byte [ebp + 0x10]
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
add dword [0x4377b8], 0x75f7fef3
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
and dword [0x43bb58], 0xa72e5a85
mov al, byte [ebp - 2]
and al, 0x3f
mov byte [ebp - 5], al
movzx eax, word [0x43591c]
or eax, 0xac2b18bc
mov word [0x43591c], ax
or dword [0x437b1c], 0xa5af0194
movsx eax, word [0x435c14]
sar eax, 8
add eax, 0x3a47821d
xor eax, 0x450a2c21
cmp eax, 0xc9a8705c
jge 0x413b93
inc word [0x4353de]
mov ax, word [0x4353de]
cwde
and eax, 0xb8646605
xor eax, 0xec7ade59
sub dword [0x43a450], eax
jmp 0x413bb1
movsx eax, word [0x43651e]
imul eax, eax, 0xee4ba298
cmp eax, 0x9fcddb5
jge 0x413bb1
add dword [0x4372a4], 0x26680617
cmp edi, esi
jg 0x413d14
mov eax, dword [0x43e66c]
xor eax, 0x589d6dce
cmp eax, 0x77457bb9
jge 0x413bd9
imul eax, dword [0x43e3b8], 0x6dbf8c6a
mov dword [0x43e3b8], eax
test bl, bl
je 0x413c93
mov dl, byte [ebp + edi - 8]
cmp dl, 0x3d
jbe 0x413c93
mov ecx, dword [0x43b7d8]
mov eax, dword [0x4393f8]
add eax, 0xddbf148
add eax, ecx
mov dword [0x4393f8], eax
cmp dl, 0x3e
jne 0x413c53
dec word [0x435510]
mov ax, word [0x435510]
movsx ecx, ax
movsx eax, word [0x432e30]
add ecx, 0x61d14215
or ecx, eax
mov eax, dword [0x43e568]
or eax, ecx
mov ecx, dword [ebp + 0x14]
mov word [0x432e30], ax
lea eax, [ebp - 0x10]
push eax
call fcn.00402c06
imul eax, dword [0x43ba94], 0x14953e76
mov dword [0x43ba94], eax
jmp 0x413c87
imul eax, dword [0x437b84], 0x33153000
mov ecx, 0x31f26db9
sub ecx, eax
lea eax, [ebp - 0x14]
mov word [0x434682], cx
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00402c06
mov eax, dword [0x43c2bc]
sub eax, dword [0x43b0a8]
mov dword [0x43c2bc], eax
add dword [0x4393fc], 0x7ab59850
jmp 0x413cf5
mov ecx, dword [0x43d044]
movzx eax, word [0x4358d2]
shl ecx, 5
sub eax, ecx
mov ecx, dword [ebp - 0xc]
mov word [0x4358d2], ax
movzx eax, byte [ebp + edi - 8]
movzx eax, byte [eax + ecx]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00408a55
mov eax, dword [0x43c414]
sub eax, 0x1a680a87
cmp eax, 0xfc4612d2
jne 0x413cf5
mov eax, dword [0x439db0]
mov ecx, dword [0x43e068]
add eax, 0x39888344
and ecx, eax
and ecx, 0x872426fe
mov dword [0x43e068], ecx
dec dword [0x439db0]
mov dword [0x43bf10], 0xeb274462
inc edi
imul eax, dword [0x43adf0], 0x68c57c89
mov dword [0x43adf0], eax
jmp 0x413b58
imul eax, dword [0x43cb70], 0xbedd79f2
push 3
pop ebx
mov dword [0x43cb70], eax
cmp esi, ebx
jge 0x413e4e
sub ebx, esi
mov eax, dword [0x437df8]
mov ecx, 0x1afdea2
sub ecx, eax
mov eax, dword [0x437d9c]
and ecx, 0xc6e729a
add eax, 0x630e2c96
cmp ecx, eax
jne 0x413d5f
imul eax, dword [0x436c8c], 0x9ed438da
mov dword [0x436c8c], eax
cmp dword [0x43dbcc], 0xd2ff9fff
jg 0x413d75
xor dword [0x437708], 0xd29ddada
cmp byte [ebp + 0x10], 0
je 0x413db4
mov eax, dword [0x43cef4]
sar eax, 4
cmp eax, 0x5d821698
jne 0x413d9c
movzx eax, word [0x436556]
or eax, 0x98405035
mov word [0x436556], ax
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x18]
push eax
call fcn.00402c06
xor dword [0x439fb4], 0xd3bf04b7
jmp 0x413de9
mov ecx, dword [0x43869c]
mov eax, dword [0x439248]
xor ecx, eax
or dword [0x43cc68], ecx
inc dword [0x43869c]
mov ecx, dword [ebp + 0x14]
push 0x3d
call fcn.00408a55
movzx eax, word [0x433fa8]
or eax, 0x8ecb97fc
mov word [0x433fa8], ax
movsx eax, word [0x432da2]
imul ecx, eax, 0x9d14477
mov eax, dword [0x43de2c]
not eax
add ecx, eax
movsx eax, word [0x433602]
imul eax, eax, 0x2ede1c1d
and eax, 0x7a47b6e0
cmp ecx, eax
jg 0x413e2a
movzx eax, word [0x433ec6]
imul eax, eax, 0x71367618
mov word [0x433ec6], ax
jmp 0x413e47
dec dword [0x439584]
mov ecx, dword [0x439584]
mov eax, dword [0x43ade0]
add eax, 0xa53d9b4c
add eax, ecx
mov dword [0x43ade0], eax
dec ebx
jne 0x413d30
mov dword [0x436edc], 0x2cc6a69b
push dword [ebp - 0xc]
mov eax, 0xfffffdf5
mov word [0x432b4a], ax
push 0x41
call fcn.0042c328
movzx eax, word [0x435ce0]
xor ebx, ebx
or eax, 0x71f32670
mov word [0x435ce0], ax
lea eax, [ebp - 0x10]
push 4
push ebx
push eax
call fcn.0041cb3c
mov eax, dword [0x43960c]
add esp, 0x14
dec dword [0x43960c]
cmp eax, 0x834253c
je 0x413eb4
mov eax, dword [0x43e548]
mov ecx, 0x61d4f8d0
sub ecx, eax
add dword [0x43a044], ecx
push 4
lea eax, [ebp - 0x14]
push ebx
push eax
call fcn.0041cb3c
inc dword [0x43aee8]
mov eax, dword [0x43aee8]
or eax, 0x6987a652
imul eax, dword [0x43d378]
push 4
push ebx
mov dword [0x43d378], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0041cb3c
add esp, 0x18
imul eax, dword [0x437130], 0x2a6b6639
pop edi
pop esi
mov dword [0x437130], eax
pop ebx
mov esp, ebp
pop ebp
ret