Function at 0x41b030
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
movzx eax, word [0x444cba]
xor eax, 0xf200aa57
mov word [0x444cba], ax
add dword [0x4398e8], 0xe2c3fcf6
xor dword [0x43eda8], 0xffed99de
dec dword [0x43c338]
mov ecx, dword [0x43e8fc]
mov edx, dword [0x43c338]
or ecx, edx
mov dword [0x43e8fc], ecx
mov eax, dword [0x43fdd0]
imul eax, eax, 0xa3d31ca
sub esp, 0x18
push ebx
push esi
xor ebx, ebx
cmp eax, 0xf82e6dbc
push edi
jg 0x41b0b0
mov eax, dword [0x4405f8]
movzx ecx, word [0x445f02]
imul eax, eax, 0xb8f72837
xor ecx, eax
xor ecx, 0xe4db1005
mov word [0x445f02], cx
jmp 0x41b0ba
or dword [0x438518], 0xe5adfb63
add dword [0x43f0d0], 0x462826c3
push 0x41
push 0x17af
call fcn.0040d680
mov dword [ebp - 0xc], eax
mov eax, dword [0x43bab0]
movzx edx, word [0x445432]
add eax, 0x25b01dea
or edx, eax
push 4
mov word [0x445432], dx
inc dword [0x43bab0]
push 0x11d
call fcn.0040d680
mov esi, eax
mov eax, dword [0x4384a8]
movzx ecx, word [0x44597c]
or eax, 0xe7b73b19
lea edx, [ebp - 0x10]
add ecx, eax
push esi
mov word [0x44597c], cx
push edx
call fcn.00422040
push 4
mov dword [0x43f6f4], 0xe595f82d
push 0x2da9
call fcn.0040d680
dec dword [0x43b7d0]
mov edi, eax
mov eax, dword [0x43b7d0]
imul eax, eax, 0x923b7016
and dword [0x439f78], eax
push esi
push 4
call fcn.0041a760
inc word [0x4432de]
mov eax, dword [0x437948]
movzx ecx, word [0x4432de]
sar eax, 0xa
imul eax, eax, 0x39dbf214
movsx ecx, cx
lea edx, [ebp - 0x14]
sub ecx, eax
xor dword [0x437278], ecx
push edi
push edx
call fcn.00422040
dec dword [0x4391b0]
mov eax, dword [0x43d1a4]
mov ecx, dword [0x4391b0]
imul eax, eax, 0xea408f67
xor ecx, eax
add esp, 0x30
cmp ecx, 0x553a2b63
jl 0x41b1c5
mov edx, dword [0x43e880]
imul edx, edx, 0xda49702f
mov dword [0x43e880], edx
jmp 0x41b1cf
mov dword [0x440074], 0x9dfa961d
push 4
push 0x3b35
call fcn.0040d680
add dword [0x439884], 0x61c05f39
push edi
push 4
mov esi, eax
call fcn.0041a760
lea eax, [ebp - 0x18]
push esi
mov dword [0x43ada8], 0x62f816f
push eax
call fcn.00422040
and dword [0x43a8b4], 0xfe8f43ff
push esi
push 4
call fcn.0041a760
mov eax, dword [0x43bfe8]
mov ecx, dword [0x43cb5c]
shl eax, 7
add ecx, eax
and ecx, 0x8b752ef
add esp, 0x20
cmp ecx, 0x5458928a
jne 0x41b252
mov eax, dword [0x4374e0]
movzx edx, word [0x44602a]
or eax, 0x9258d7cb
sub edx, eax
mov word [0x44602a], dx
jmp 0x41b25c
mov dword [0x43f084], 0x4b75cf5b
or esi, 0xffffffff
mov edi, 1
cmp dword [ebp + 0xc], ebx
je 0x41b766
lea ecx, [ecx]
mov dword [0x43752c], 0x668e1ec3
mov ecx, dword [0x43d708]
mov eax, dword [0x438d6c]
mov edx, dword [ebp + 8]
not ecx
imul eax, ecx
mov ecx, dword [0x43d0a0]
sub dword [ebp + 0xc], edi
xor eax, 0xbc393f8a
imul ecx, eax
mov dword [0x43d0a0], ecx
mov al, byte [edx]
mov byte [ebp + ebx - 4], al
or dword [0x43f648], 0x2004100
mov ecx, dword [0x4411d4]
not ecx
and ecx, 0x5520af55
xor ecx, 0x345dbbeb
add ebx, edi
cmp ecx, 0xe54f5b55
jge 0x41b2dc
and dword [0x437114], 0xf1a78086
add dword [ebp + 8], edi
and dword [0x440c3c], 0x27f75ae7
cmp ebx, 3
jne 0x41b752
movzx edx, word [0x443aa4]
movzx eax, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
sub edx, 0x400104
mov word [0x443aa4], dx
mov eax, dword [0x44058c]
mov ecx, dword [0x437ff0]
and eax, 0xc24dbfd3
imul ecx, eax
mov dword [0x437ff0], ecx
add dword [0x44058c], esi
movzx edx, byte [ebp - 4]
and dl, bl
shl dl, 4
mov byte [ebp - 7], dl
add dword [0x43e26c], edi
movzx eax, word [0x443376]
movsx ecx, ax
mov eax, dword [0x43e26c]
shl ecx, 5
xor eax, ecx
movzx ecx, word [0x442354]
movzx edx, byte [ebp - 3]
xor eax, 0xa9e34b4f
and ecx, eax
mov word [0x442354], cx
movzx eax, word [0x443624]
mov cl, byte [ebp - 3]
or eax, 0xa7798fef
shr dl, 4
add byte [ebp - 7], dl
mov word [0x443624], ax
mov eax, dword [0x43cb1c]
and cl, 0xf
add cl, cl
add cl, cl
mov byte [ebp - 6], cl
sub eax, 0x1b0f9683
xor eax, 0xd7e67173
sub dword [0x43f6ec], eax
add dword [0x43cb1c], esi
mov al, byte [ebp - 2]
mov dl, al
shr dl, 6
add byte [ebp - 6], dl
mov ecx, 0xffffd1ba
mov word [0x443c38], cx
movzx edx, word [0x441e62]
mov ecx, dword [0x437634]
and al, 0x3f
mov byte [ebp - 5], al
add word [0x441e62], si
movsx eax, dx
and ecx, eax
and ecx, 0xceaa662f
cmp ecx, 0x3bf9f795
jg 0x41b420
mov dx, word [0x442cb6]
movsx eax, dx
add eax, 0x10b36b06
or eax, 0xdb8dfa8e
cmp eax, 0xb73908cc
jg 0x41b42a
mov ecx, dword [0x43ef6c]
imul ecx, ecx, 0x18800100
mov dword [0x43ef6c], ecx
jmp 0x41b42a
mov dword [0x44025c], 0x3eab029f
xor ebx, ebx
add word [0x4432f2], si
mov dx, word [0x4432f2]
movsx eax, dx
mov dword [0x439dcc], eax
jmp 0x41b450
mov cx, word [0x4427aa]
movsx edx, cx
cmp edx, 0x75d2e804
jg 0x41b483
mov eax, dword [0x43f8b0]
movzx ecx, word [0x442d2c]
imul eax, eax, 0xa378a427
or ecx, eax
mov word [0x442d2c], cx
add dword [0x43f8b0], esi
cmp byte [ebp + 0x10], 0
je 0x41b631
mov al, byte [ebp + ebx - 8]
cmp al, 0x3d
jbe 0x41b631
movzx edx, word [0x445b72]
sub edx, 0x40e95464
mov word [0x445b72], dx
cmp al, 0x3e
jne 0x41b537
mov eax, dword [0x4382b0]
mov ecx, dword [0x43eba8]
not eax
and ecx, eax
movzx eax, word [0x44243e]
or eax, ecx
lea ecx, [ebp - 0x10]
push ecx
mov ecx, dword [ebp + 0x14]
mov word [0x44243e], ax
add dword [0x43eba8], edi
call fcn.0042e750
mov edx, dword [0x43d444]
not edx
cmp edx, 0xdfd448d8
jg 0x41b5cb
add dword [0x43a504], edi
mov eax, dword [0x43a504]
mov ecx, dword [0x43c31c]
add ecx, eax
mov eax, dword [0x437450]
mov dx, word [0x4417ba]
and eax, ecx
movsx ecx, dx
mov edx, 0xa4a0196e
sub edx, ecx
cmp eax, edx
jg 0x41b5cb
mov ax, word [0x4427fa]
jmp 0x41b5cb
mov ecx, dword [0x43ce84]
lea edx, [ecx*4 + 0x41ea2940]
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
mov dword [0x439c10], edx
push eax
call fcn.0042e750
add word [0x444d82], si
mov eax, dword [0x43fcbc]
mov cx, word [0x444d82]
movsx edx, cx
mov ecx, dword [0x43a9b8]
add dword [0x43a9b8], edi
add eax, eax
sub eax, edx
mov edx, 0xc1e6b7bc
and eax, 0xa63a7575
sub edx, ecx
cmp edx, eax
je 0x41b5a0
mov eax, dword [0x43aaac]
mov ecx, dword [0x440f48]
and eax, ecx
mov dword [0x43aaac], eax
jmp 0x41b5cb
add dword [0x43cf0c], esi
mov dx, word [0x443164]
mov ecx, dword [0x43cf0c]
movsx eax, dx
sub ecx, eax
xor ecx, 0x6772712e
mov dword [0x43dadc], ecx
add word [0x443164], di
add dword [0x43d5dc], edi
mov dx, word [0x445fdc]
mov ecx, dword [0x43d5dc]
movsx eax, dx
add ecx, eax
or ecx, 0xe63a79eb
cmp ecx, 0xdfedf4ef
jge 0x41b6ab
mov dx, word [0x442bd2]
mov ecx, dword [0x438754]
movsx eax, dx
xor eax, 0x340df771
or ecx, 0x89cea088
cmp ecx, eax
jg 0x41b623
and dword [0x43ce60], 0xc459b792
jmp 0x41b6ab
mov edx, dword [0x43cba4]
add dword [0x43cba4], edi
jmp 0x41b6ab
movzx eax, word [0x446638]
movzx ecx, byte [ebp + ebx - 8]
mov edx, dword [ebp - 0xc]
and eax, 0x25381995
mov word [0x446638], ax
movzx eax, byte [ecx + edx]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.0041cc30
add dword [0x43e598], edi
mov cx, word [0x44452c]
mov edx, dword [0x43e598]
movsx eax, cx
imul edx, edx, 0xb5084b9a
imul eax, eax, 0x4539f3dd
add eax, 0x455d7111
or edx, 0x778964da
cmp eax, edx
jl 0x41b6a1
mov eax, dword [0x43921c]
imul eax, eax, 0x937ee777
xor eax, 0xe65ff48b
add dword [0x4410f8], eax
jmp 0x41b6ab
mov dword [0x439420], 0xbfd7ffff
mov eax, dword [0x43cc38]
imul eax, eax, 0xffd3ae6d
cmp eax, 0xc7f8fcb4
je 0x41b6f2
add word [0x445348], si
mov cx, word [0x445348]
movsx edx, cx
imul edx, edx, 0x45a6a720
cmp edx, 0x88773c96
jg 0x41b708
movzx eax, word [0x4443d6]
not eax
and eax, 0x5e1a597b
mov word [0x44437c], ax
jmp 0x41b708
add dword [0x438190], edi
mov eax, dword [0x438190]
xor eax, 0x8f293ff8
sub dword [0x43da70], eax
add dword [0x43de7c], 0x1fc448cf
add ebx, edi
cmp ebx, 4
jne 0x41b450
mov eax, dword [0x43cff8]
mov ecx, dword [0x43c494]
mov edx, dword [0x43efb0]
imul eax, ecx
sub eax, edx
add dword [0x43ea88], eax
add dword [0x43c33c], edi
mov eax, dword [0x43c33c]
imul eax, eax, 0x8e750913
xor ebx, ebx
and dword [0x43bdec], eax
cmp dword [ebp + 0xc], 0
mov dword [0x438cb8], 0x7675022b
jne 0x41b270
mov ax, word [0x444d40]
cwde
add eax, 0x246034b5
or dword [0x43de24], eax
add word [0x444d40], si
test ebx, ebx
je 0x41bca7
mov cx, word [0x442316]
movsx edx, cx
shl edx, 5
cmp edx, 0xd7f8db22
jge 0x41b7d6
mov ax, word [0x44668a]
mov cx, word [0x441c2a]
cwde
imul eax, eax, 0x15204cb8
movsx edx, cx
mov ecx, 0xffffffff
add word [0x441c2a], cx
add edx, eax
cmp edx, 0xc6a194be
jl 0x41b7d9
mov eax, dword [0x43a7cc]
mov edx, dword [0x43c944]
jmp 0x41b7d9
or ecx, 0xffffffff
mov edx, dword [0x43cef8]
mov eax, 0x2bfb2ba3
sub eax, edx
mov edx, dword [0x43ae50]
add dword [0x43ae50], edi
add edx, eax
cmp edx, 0xbb5dca8b
jl 0x41b853
mov ax, word [0x444066]
add word [0x444066], cx
movsx edx, ax
or edx, 0xc7327a83
cmp edx, 0x25a5758a
jge 0x41b827
mov eax, 0x2042
mov word [0x443412], ax
jmp 0x41b853
movzx edx, word [0x442ed4]
movsx eax, dx
movzx edx, word [0x44606a]
xor eax, 0x3084218
or edx, eax
or edx, 0x1ce5b067
mov word [0x44606a], dx
add word [0x442ed4], cx
cmp ebx, 3
jge 0x41b8c4
mov esi, 3
sub esi, ebx
push esi
lea eax, [ebp + ebx - 4]
push 0
push eax
call fcn.0040b950
add esp, 0xc
nop
add dword [0x43ef68], edi
mov eax, dword [0x43ef68]
movzx ecx, word [0x442282]
or eax, 0xf8c7aa92
add ecx, eax
mov word [0x442282], cx
mov dx, word [0x4440ac]
movsx eax, dx
add eax, 0xc8f26bc1
or dword [0x43d2a8], eax
mov eax, dword [0x43bf10]
movzx ecx, word [0x44622c]
imul eax, eax, 0x9da40c00
or ecx, eax
sub esi, edi
mov word [0x44622c], cx
jne 0x41b870
mov edx, dword [0x43ff9c]
cmp edx, 0x8b5cd68d
jg 0x41b8de
add dword [0x439544], 0xff165348
jmp 0x41b8e8
xor dword [0x438610], 0x6e7e476e
mov cx, word [0x445700]
movzx eax, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
movsx eax, cx
imul eax, eax, 0x387789ea
sub dword [0x439bd4], eax
mov al, byte [ebp - 4]
mov dl, byte [ebp - 3]
and al, 3
shl al, 4
mov byte [ebp - 7], al
shr dl, 4
add al, dl
mov byte [ebp - 7], al
mov dword [0x4394d0], 0xec2a1b89
add dword [0x439048], 0xf65061
movzx eax, byte [ebp - 3]
and al, 0xf
add al, al
add al, al
mov byte [ebp - 6], al
and dword [0x43aa6c], 0x7701f34d
mov edx, dword [0x43c188]
mov cl, byte [ebp - 2]
imul edx, edx, 0xd701adca
movzx eax, byte [ebp - 2]
shr cl, 6
add byte [ebp - 6], cl
and al, 0x3f
mov dword [0x43c188], edx
mov byte [ebp - 5], al
add dword [0x43f0f4], edi
mov ecx, dword [0x43f0f4]
or ecx, 0x95da8bc0
cmp ecx, 0x8e9487eb
jle 0x41b991
mov dword [0x44063c], 0x350c8015
mov edx, 0xffffaf4f
xor esi, esi
mov word [0x442af0], dx
nop
add dword [0x43fd6c], edi
mov ax, word [0x444f2e]
mov ecx, dword [0x43fd6c]
mov edx, dword [0x43c848]
cwde
imul eax, eax, 0xc6ca0880
not edx
or ecx, eax
add edx, 0x967fccf
cmp ecx, edx
jge 0x41b9d9
xor dword [0x436fc0], 0xdc8058dd
jmp 0x41ba21
mov eax, dword [0x43ba0c]
sar eax, 1
or eax, 0x8d47775c
cmp eax, 0x4e17a006
jle 0x41ba00
mov ecx, dword [0x44063c]
mov edx, dword [0x43eb88]
add dword [0x43eb88], edi
jmp 0x41ba21
mov eax, dword [0x43dbf0]
mov ecx, dword [0x43e338]
sar eax, 5
sub eax, 0x705ae8aa
xor eax, 0xf76ae11c
imul ecx, eax
mov dword [0x43e338], ecx
cmp esi, ebx
jg 0x41bb75
mov eax, dword [0x43b198]
sar eax, 7
add eax, 0x4140e6c3
or dword [0x4386ec], eax
cmp byte [ebp + 0x10], 0
je 0x41bb14
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x41bb14
mov edx, 0xffff9dcf
mov word [0x443922], dx
cmp al, 0x3e
jne 0x41bab4
movzx eax, word [0x444308]
lea ecx, [ebp - 0x10]
add eax, 0x5c2bc3eb
push ecx
mov ecx, dword [ebp + 0x14]
mov word [0x444308], ax
call fcn.0042e750
mov dx, word [0x444ad2]
movsx eax, dx
sar eax, 8
cmp eax, 0xf598fbae
jle 0x41bada
mov ecx, dword [0x437624]
add ecx, 0x23558f6e
cmp ecx, 0x8854a903
jg 0x41bada
or dword [0x436ec0], 0xffaf364
jmp 0x41bada
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x14]
mov dword [0x43bc78], 0xaf70efa1
push edx
call fcn.0042e750
mov eax, dword [0x43e778]
imul eax, eax, 0xd400260
mov dword [0x43e778], eax
mov ecx, dword [0x438df0]
imul ecx, ecx, 0x2d1cb200
mov edx, 0xe78a0ca8
sub edx, ecx
cmp edx, 0xe066b49e
jg 0x41bb47
mov ecx, dword [0x43f5ac]
mov eax, dword [0x43f784]
sar ecx, 4
imul eax, ecx
add dword [0x439448], eax
add dword [0x43f784], edi
jmp 0x41bb47
add word [0x4463c0], di
mov ax, word [0x4463c0]
mov edx, dword [ebp - 0xc]
cwde
add dword [0x43edcc], eax
movzx ecx, byte [ebp + esi - 8]
movzx eax, byte [ecx + edx]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.0041cc30
add dword [0x43c488], 0x64040248
mov eax, dword [0x43ddd8]
movzx ecx, word [0x4417c6]
shl eax, 6
add eax, 0x89396d9b
and ecx, eax
mov word [0x4417c6], cx
add esi, edi
and dword [0x43988c], 0xc01c1b62
jmp 0x41b9a0
cmp ebx, 3
mov dword [0x43a218], 0xb51ceaff
jge 0x41bc77
mov esi, 3
sub esi, ebx
mov ebx, 0x5ef39cf9
jmp 0x41bba0
movzx edx, word [0x443444]
or edx, 0x686a7aa9
mov word [0x443444], dx
mov eax, dword [0x43dd10]
mov ecx, dword [0x440d24]
imul ecx, ecx, 0x5d2d2ccc
sar eax, 2
sub eax, ecx
add dword [0x43efd4], eax
cmp byte [ebp + 0x10], 0
je 0x41bc23
mov edx, dword [0x43768c]
mov ecx, dword [ebp + 0x14]
and edx, 0x56d653d4
xor edx, 0x8ac77fb
lea eax, [ebp - 0x18]
mov dword [0x43ca90], edx
dec dword [0x43768c]
push eax
call fcn.0042e750
mov cx, word [0x441a90]
mov edx, dword [0x43c134]
movsx eax, cx
sar eax, 8
add eax, 0x730c7ae
imul edx, eax
mov dword [0x43c134], edx
jmp 0x41bc45
mov eax, dword [0x43c714]
mov ecx, dword [0x4397cc]
xor eax, ecx
mov ecx, dword [ebp + 0x14]
mov dword [0x43c714], eax
push 0x3d
call fcn.0041cc30
add dword [0x440c20], ebx
mov edx, dword [0x4407d8]
not edx
and edx, 0xa576ef16
cmp edx, 0xa7b80be7
jl 0x41bc6f
dec word [0x442594]
mov ax, word [0x442594]
cwde
and dword [0x43eb74], eax
sub esi, edi
jne 0x41bba0
mov ecx, dword [0x439ff0]
xor ecx, 0xfedff3ef
or ecx, 0x2e5df1ad
cmp ecx, 0xdf17f266
jne 0x41bc9d
xor dword [0x43878c], 0xa805664b
jmp 0x41bca7
and dword [0x43b24c], 0x8efffc4b
mov eax, dword [0x438e9c]
mov edx, dword [0x43d4e0]
mov ecx, dword [ebp - 0xc]
not eax
push ecx
lea eax, [edx + eax + 0x6125efc9]
mov dword [0x43d4e0], eax
push 0x41
call fcn.0041a760
add dword [0x43fcc4], 0xbddc1b09
push 4
lea edx, [ebp - 0x10]
push 0
push edx
call fcn.0040b950
mov eax, dword [0x43a160]
push 4
lea ecx, [ebp - 0x14]
add eax, 0x5e6965c5
push 0
mov dword [0x43df5c], eax
push ecx
call fcn.0040b950
mov edx, dword [0x439efc]
add edx, 0x4626cc2c
and edx, 0xe21c3d0c
add esp, 0x20
cmp edx, 0xaadcfe00
jg 0x41bd35
add dword [0x43a5dc], edi
mov eax, dword [0x43f4fc]
mov ecx, dword [0x43a5dc]
xor eax, ecx
mov dword [0x43f4fc], eax
jmp 0x41bd3f
xor dword [0x43b4e8], 0xa6b78c71
push 4
lea edx, [ebp - 0x18]
push 0
push edx
call fcn.0040b950
mov eax, dword [0x4396e0]
mov ecx, dword [0x436ff8]
add esp, 0xc
xor eax, ecx
pop edi
xor eax, 0x4e54d811
add dword [0x438cb8], eax
pop esi
pop ebx
mov esp, ebp
pop ebp
ret