Function at 0x499390
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov dword [esp - 0x20], 0xae6ddce
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
push esi
xchg esp, esp
xor esi, esi
mov dword [ebp - 0x10], esi
push edi
cmp ecx, 2
mov ecx, ecx
jne 0x4993b8
xor edx, edx
jmp 0x4993f8
test ecx, ecx
mov ecx, eax
jne 0x4993ce
shr ecx, 2
mov dword [esp - 0x30], 0x5a02a49c
and ecx, 8
jmp 0x4993df
shr ecx, 2
not ecx
and ecx, 1
test al, 8
xchg ecx, ecx
jne 0x4993df
or ecx, 2
mov edx, ecx
mov dword [esp - 0x1c], 0x12d9a2db
or edx, 4
test byte [ebp + 0x14], 0x10
cmovne edx, ecx
mov ecx, dword [ebp + 0x10]
xchg ecx, ecx
mov edi, dword [ebp + 0xc]
mov eax, edx
and al, 8
mov dword [ebp - 4], edx
mov edi, edi
neg al
sbb al, al
and al, 0xe9
add al, 0x20
mov ebx, ebx
mov byte [ebp - 8], al
test edi, edi
je 0x499e8f
mov dword [esp - 0x10], 0x6ad3614b
push ebx
mov ebx, dword [ebp + 8]
lea esp, [esp]
mov eax, dword [edi + 4]
xchg ebp, ebp
dec eax
cmp eax, 6
ja case.default.0x49943f
mov dword [esp - 0x40], edx
jmp dword [eax*4 + 0x499eb3]
cmp dword [edi + 0x20], 0
jne 0x499535
mov dword [esp - 0x28], 0x1471f0e0
cmp dword [edi + 8], 0
jne 0x49948f
mov word [ebx], 0x6a82
sub word [ebx], 0x340b
mov dword [esp - 0xc], edx
add word [ebx], 0x1d7e
sub word [ebx], 0x1875
sub word [ebx], 0xe0
add word [ebx], 0xade
mov ecx, ecx
add word [ebx], 0x17dd
add ebx, 2
jmp case.default.0x49943f
mov byte [ebx], 0x11
add byte [ebx], 3
mov dword [esp - 0x34], esp
xor byte [ebx], 0x1b
xor byte [ebx], 0x2f
sub byte [ebx], 0x10
sub byte [ebx], 9
mov edi, edi
add byte [ebx], 0x54
inc ebx
test dl, 1
xchg ebx, ebx
je 0x4994c4
mov byte [ebx], 0x49
xor byte [ebx], 0x53
add byte [ebx], 0x47
xchg esi, esi
sub byte [ebx], 0x13
sub byte [ebx], 0x2e
inc ebx
add esi, dword [ebp + 0x18]
mov dword [esp - 0x14], 0x4872a440
mov dword [ebp - 0x10], esi
test ecx, ecx
jne 0x499535
mov edi, edi
test byte [ebp + 0x14], 2
je 0x4994f8
mov byte [ebx], 0x49
xor byte [ebx], 0x4b
xchg ebx, ebx
xor byte [ebx], 0x3f
xor byte [ebx], 0x29
add byte [ebx], 2
add byte [ebx], 0x49
mov ebx, ebx
sub byte [ebx], 0x52
inc ebx
mov byte [ebx], 0x17
mov esp, esp
xor byte [ebx], 0x62
sub byte [ebx], 0x56
add byte [ebx], 0x54
sub byte [ebx], 0x69
mov dword [esp - 0x40], esi
inc ebx
test esi, esi
jle 0x499535
push esi
mov dword [esp - 0x34], ecx
push dword [ebp - 8]
push ebx
call fcn.00491110
mov dword [esp - 0xc], 0x1fa2e595
mov edx, dword [ebp - 4]
add esp, 0xc
mov ecx, dword [ebp + 0x10]
mov ebx, ebx
add ebx, esi
mov eax, dword [edi + 0x20]
cmp eax, dword [edi + 8]
jne 0x499644
xchg ebx, ebx
sub esi, dword [ebp + 0x18]
mov dword [ebp - 0x10], esi
test ecx, ecx
mov dword [esp - 0x14], 0x766781a1
jne 0x4995c1
test byte [ebp + 0x14], 2
je 0x49957f
mov dword [esp - 0x1c], 0x3d53180f
mov byte [ebx], 0x3f
sub byte [ebx], 5
sub byte [ebx], 0x2a
mov dword [esp - 0x2c], edx
add byte [ebx], 0x47
xor byte [ebx], 0x2d
xor byte [ebx], 0x6b
xchg esi, esi
sub byte [ebx], 4
inc ebx
mov byte [ebx], 0xb
mov dword [esp - 0x2c], edx
add byte [ebx], 0x2b
sub byte [ebx], 0x16
xor byte [ebx], 0x7f
mov dword [esp - 0x44], 0x64fa1187
sub byte [ebx], 0x21
sub byte [ebx], 0x20
sub byte [ebx], 0x14
xchg ecx, ecx
inc ebx
test esi, esi
jle 0x4995c1
mov dword [esp - 0x3c], edx
push esi
push dword [ebp - 8]
push ebx
mov edx, edx
call fcn.00491110
mov edx, dword [ebp - 4]
add esp, 0xc
add ebx, esi
xchg ebp, ebp
test dl, 1
je 0x4995e7
mov byte [ebx], 4
mov dword [esp - 0x30], 0x3cc339b5
add byte [ebx], 0x34
sub byte [ebx], 0x1d
add byte [ebx], 9
mov dword [esp - 0x18], ebp
xor byte [ebx], 0x3c
add byte [ebx], 8
inc ebx
mov ecx, ecx
mov byte [ebx], 0x69
sub byte [ebx], 0x2d
xor byte [ebx], 0x4b
mov dword [esp - 0x18], esi
sub byte [ebx], 0x5d
sub byte [ebx], 0x19
add byte [ebx], 0x49
mov dword [esp - 0xc], 0x6c8e086
xor byte [ebx], 0x17
inc ebx
mov dword [edi + 0x20], 0x3b8f4620
sub dword [edi + 0x20], 0x2a46b63d
mov dword [esp - 0x34], 0x1f285b94
add dword [edi + 0x20], 0x6c512aac
sub dword [edi + 0x20], 0x30be4abe
sub dword [edi + 0x20], 0x9d28404
mov dword [esp - 0x44], ecx
sub dword [edi + 0x20], 0x4308ebcd
jmp case.default.0x49943f
test eax, eax
je 0x4996e6
mov byte [ebx], 0x2f
mov dword [esp - 0x20], 0x2476d798
xor byte [ebx], 0x4d
sub byte [ebx], 0x24
sub byte [ebx], 0x28
mov dword [esp - 0x1c], edi
sub byte [ebx], 7
add byte [ebx], 0x1d
inc ebx
test dl, 2
mov ebp, ebp
je 0x49968c
mov byte [ebx], 1
xor byte [ebx], 0xe
mov edx, edx
add byte [ebx], 0x17
xor byte [ebx], 0x4f
sub byte [ebx], 0x49
inc ebx
mov dword [esp - 0x44], 0x51cc6177
test ecx, ecx
jne 0x4996e6
test byte [ebp + 0x14], 2
mov dword [esp - 0x18], ebx
je 0x4996b0
mov byte [ebx], 0x18
add byte [ebx], 0x37
add byte [ebx], 0x10
mov dword [esp - 0x34], edx
xor byte [ebx], 0x50
xor byte [ebx], 2
inc ebx
mov edx, edx
mov byte [ebx], 0x70
xor byte [ebx], 0x4a
sub byte [ebx], 1
add byte [ebx], 0x21
mov dword [esp - 0x1c], 0x56e48faf
sub byte [ebx], 0x50
inc ebx
test esi, esi
mov esp, esp
jle 0x4996e6
push esi
push dword [ebp - 8]
push ebx
mov dword [esp - 0x3c], ebp
call fcn.00491110
mov edx, dword [ebp - 4]
add esp, 0xc
add ebx, esi
mov ecx, ecx
mov ecx, dword [edi + 0x20]
mov eax, dword [edi + 0xc]
inc ecx
mov dword [edi + 0x20], ecx
mov dword [esp - 0xc], 0x3513a2fd
mov edi, dword [eax + ecx*4 - 4]
jmp 0x499aa9
cmp dword [edi + 0x20], 0
jne 0x4997fa
cmp dword [edi + 8], 0
jne 0x49973c
mov dword [esp - 0x18], edi
mov word [ebx], 0x4673
xor word [ebx], 0x435a
sub word [ebx], 0xe
add word [ebx], 0x4813
mov ebx, ebx
add word [ebx], 0x1746
add word [ebx], 0x1907
add ebx, 2
jmp case.default.0x49943f
mov byte [ebx], 0
xor byte [ebx], 0x62
sub byte [ebx], 0x3f
add byte [ebx], 0x3b
mov dword [esp - 0x1c], 0x30a57751
add byte [ebx], 0x1d
add byte [ebx], 0
inc ebx
mov edi, edi
test dl, 1
je 0x499782
mov byte [ebx], 0x23
mov dword [esp - 0x28], ecx
add byte [ebx], 0xa
sub byte [ebx], 3
add byte [ebx], 0x23
mov dword [esp - 0x2c], 0x34e3c8dc
add byte [ebx], 0x1f
sub byte [ebx], 9
sub byte [ebx], 0x43
mov ebx, ebx
inc ebx
add esi, dword [ebp + 0x18]
mov dword [ebp - 0x10], esi
test ecx, ecx
mov dword [esp - 0x38], 0x2fb671f3
jne 0x4997fa
test byte [ebp + 0x14], 2
je 0x4997bc
mov dword [esp - 0x38], 0x1a2c3cc0
mov byte [ebx], 0x31
xor byte [ebx], 0x7d
add byte [ebx], 0x18
xchg edi, edi
add byte [ebx], 0xf
sub byte [ebx], 0x5c
xor byte [ebx], 0x43
xchg ecx, ecx
sub byte [ebx], 0x47
inc ebx
mov byte [ebx], 0x60
mov dword [esp - 0x20], 0x191762b
add byte [ebx], 4
xor byte [ebx], 0x53
xor byte [ebx], 0x5c
sub byte [ebx], 0x1d
mov esp, esp
sub byte [ebx], 0x44
inc ebx
test esi, esi
mov ecx, ecx
jle 0x4997fa
push esi
push dword [ebp - 8]
push ebx
mov dword [esp - 0x18], ecx
call fcn.00491110
mov edx, dword [ebp - 4]
add esp, 0xc
mov ecx, dword [ebp + 0x10]
xchg edx, edx
add ebx, esi
mov eax, dword [edi + 0x20]
cmp eax, dword [edi + 8]
jne 0x4998e8
mov dword [esp - 0x24], esp
sub esi, dword [ebp + 0x18]
mov dword [ebp - 0x10], esi
test ecx, ecx
jne 0x49987b
mov dword [esp - 0x44], 0x72e63c75
test byte [ebp + 0x14], 2
je 0x499844
mov byte [ebx], 0x2c
mov dword [esp - 0x10], edx
add byte [ebx], 8
add byte [ebx], 0x3c
sub byte [ebx], 0x35
sub byte [ebx], 4
mov dword [esp - 0x10], ecx
add byte [ebx], 8
xor byte [ebx], 0x32
inc ebx
mov dword [esp - 0x30], ebp
mov byte [ebx], 0x47
sub byte [ebx], 0x1a
add byte [ebx], 0x22
mov edi, edi
sub byte [ebx], 0x31
add byte [ebx], 0x19
sub byte [ebx], 0x2d
inc ebx
mov dword [esp - 0x3c], 0x77162f68
test esi, esi
jle 0x49987b
push esi
xchg esp, esp
push dword [ebp - 8]
push ebx
call fcn.00491110
mov edx, dword [ebp - 4]
xchg ecx, ecx
add esp, 0xc
add ebx, esi
test dl, 1
mov dword [esp - 0x40], edi
je 0x4998a4
mov byte [ebx], 0x13
xor byte [ebx], 0xd
mov dword [esp - 0x34], 0x3ef5eea
xor byte [ebx], 0x44
add byte [ebx], 0x10
add byte [ebx], 3
add byte [ebx], 1
mov esi, esi
xor byte [ebx], 0x4e
inc ebx
mov byte [ebx], 0x25
xchg ebx, ebx
add byte [ebx], 0x19
add byte [ebx], 5
add byte [ebx], 0x2b
mov dword [esp - 0x20], ebp
add byte [ebx], 0xf
inc ebx
mov dword [edi + 0x20], 0x500a421
mov dword [esp - 0x44], esi
add dword [edi + 0x20], 0x186c57d1
add dword [edi + 0x20], 0xcee8cb2
xor dword [edi + 0x20], 0x49d6d547
sub dword [edi + 0x20], 0x638d5de3
xchg ebp, ebp
jmp case.default.0x49943f
test eax, eax
je 0x499999
mov dword [esp - 0x44], 0x4cafc1c1
mov byte [ebx], 0x33
sub byte [ebx], 0x1a
add byte [ebx], 0x33
sub byte [ebx], 0xa
mov dword [esp - 0x34], ebx
add byte [ebx], 0x33
sub byte [ebx], 0x49
inc ebx
mov dword [esp - 0x44], edx
test dl, 2
je 0x49992c
mov byte [ebx], 0x6b
mov ebx, ebx
xor byte [ebx], 0x3e
xor byte [ebx], 0x48
xor byte [ebx], 0x2c
xchg edi, edi
sub byte [ebx], 0x11
inc ebx
test ecx, ecx
mov dword [esp - 0x44], 0x5bb08fc3
jne 0x499999
test byte [ebp + 0x14], 2
je 0x49995e
mov byte [ebx], 0x27
xchg esp, esp
xor byte [ebx], 0x24
add byte [ebx], 0x69
xor byte [ebx], 0x51
sub byte [ebx], 2
mov dword [esp - 0x3c], 0x1257d77f
sub byte [ebx], 0x27
sub byte [ebx], 7
inc ebx
mov byte [ebx], 7
mov dword [esp - 0x38], 0x76429c36
add byte [ebx], 0x4a
xor byte [ebx], 0xa
sub byte [ebx], 0x4a
mov dword [esp - 0x10], ecx
xor byte [ebx], 0x1b
inc ebx
test esi, esi
jle 0x499999
xchg edx, edx
push esi
push dword [ebp - 8]
push ebx
mov dword [esp - 0x44], 0x58f42965
call fcn.00491110
add esp, 0xc
add ebx, esi
mov esp, esp
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0xc]
mov dword [ebp + 8], edx
mov dword [esp - 0x14], edi
lea ecx, [eax + eax*2]
inc eax
mov dword [edi + 0x20], eax
mov dword [esp - 0x40], edx
mov byte [ebx], 9
xor byte [ebx], 0x50
add byte [ebx], 0x13
sub byte [ebx], 0x49
mov esp, esp
add byte [ebx], 0x1f
sub byte [ebx], 0x3e
add byte [ebx], 0x1e
mov ecx, ecx
inc ebx
push dword [edx + ecx*4]
mov dword [ebp + 0xc], ecx
xchg esp, esp
push dword [edx + ecx*4 + 4]
push ebx
call fcn.0049a110
mov ebx, ebx
mov edx, dword [ebp - 4]
add ebx, eax
add esp, 0xc
mov word [ebx], 0x4e43
mov dword [esp - 0x38], 0x5de08ec7
xor word [ebx], 0x4d44
add word [ebx], 0x45f
add word [ebx], 0x6072
mov dword [esp - 0x2c], 0x37be46de
xor word [ebx], 0x79cb
add word [ebx], 0x3c6c
sub word [ebx], 0x205d
add ebx, 2
mov dword [esp - 0x14], 0x4b96e44f
test dl, 4
je 0x499a44
mov byte [ebx], 0x46
mov dword [esp - 0x2c], 0x5ca9e3d1
xor byte [ebx], 0x35
add byte [ebx], 6
sub byte [ebx], 0x5b
mov edx, edx
add byte [ebx], 2
inc ebx
mov edi, dword [ebp + 0xc]
xchg edx, edx
mov eax, dword [ebp + 8]
mov edi, dword [eax + edi*4 + 8]
jmp 0x499aa9
mov byte [ebx], 0x6c
add byte [ebx], 0xe
mov dword [esp - 0x38], esi
sub byte [ebx], 0x6b
add byte [ebx], 0x53
sub byte [ebx], 0x37
sub byte [ebx], 9
mov dword [esp - 0x40], ecx
inc ebx
push dword [edi + 0xc]
push dword [edi + 8]
push ebx
mov dword [esp - 0x30], 0x70eb512e
call fcn.0049a110
add ebx, eax
add esp, 0xc
mov byte [ebx], 0x76
mov dword [esp - 0xc], edx
sub byte [ebx], 0x3d
xor byte [ebx], 2
xor byte [ebx], 0x32
add byte [ebx], 0x1f
xchg esi, esi
sub byte [ebx], 6
xor byte [ebx], 0
inc ebx
mov edx, dword [ebp - 4]
xchg edi, edi
mov edi, dword [edi]
mov ecx, dword [ebp + 0x10]
mov dword [ebp + 0xc], edi
mov dword [esp - 0x24], esi
test edi, edi
jne 0x49942c
mov byte [ebx], 0x7a
mov dword [esp - 0x10], esi
xor byte [ebx], 0x71
add byte [ebx], 5
xor byte [ebx], 0xe
mov ebx, ebx
xor byte [ebx], 0x7a
sub byte [ebx], 0x64
pop ebx
pop edi
mov dword [esp - 0x2c], 0x6aeea133
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0xc]
mov esi, dword [edi + 8]
mov dword [esp - 0x18], 0x422b159d
mov dword [ebp + 8], esi
mov dword [ebp - 0x14], eax
test eax, eax
jg 0x499b34
mov dword [esp - 0x28], ebp
jl 0x499b04
test esi, esi
jae 0x499b34
mov byte [ebx], 0x33
xchg ebp, ebp
add byte [ebx], 0x18
sub byte [ebx], 0x31
add byte [ebx], 0x11
mov dword [esp - 0x18], ebp
sub byte [ebx], 0x2b
add byte [ebx], 0x2d
inc ebx
neg esi
mov dword [esp - 0x20], 0x4584b3b8
mov dword [ebp + 8], esi
adc eax, 0
neg eax
mov dword [ebp - 0x14], eax
mov ebp, ebp
inc ebx
mov ecx, esi
mov dword [ebp - 0x1c], ecx
xchg esi, esi
mov edx, eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0xc], ebx
test eax, eax
xchg edx, edx
jl 0x499c32
jg 0x499b5d
cmp esi, 0xa
mov dword [esp - 0xc], ebp
jb 0x499c32
inc ebx
mov eax, esi
mov ecx, 0x6795b753
mov ebp, ebp
sub ecx, 0x4f9bbb02
add ecx, 0x1cc1496c
xor ecx, 0xf74617d
mov ebx, ebx
add ecx, 0x90fda80d
mov dword [ebp - 0xc], ebx
mul ecx
mov eax, dword [ebp + 8]
mov dword [esp - 0x24], 0x20afc0a0
lea ebx, [ecx - 1]
mov esi, edx
mul ebx
mov edi, eax
xchg esp, esp
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x14]
mul ecx
mov ebx, edx
mov ebx, ebx
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov edx, 0xf7c68a
xchg ecx, ecx
add edx, 0x2a04537c
add edx, 0x4784c0a7
xor edx, 0x3cc64bc4
xor edx, 0x828a5da5
xchg esp, esp
mul edx
add ecx, esi
mov dword [ebp + 8], eax
mov esi, dword [ebp + 8]
mov edi, edi
adc ebx, 0
add edi, ecx
mov ecx, dword [ebp - 0x20]
adc ecx, 0
mov dword [esp - 0x14], edx
xor eax, eax
add ebx, ecx
adc eax, eax
mov ecx, ecx
add esi, ebx
mov ebx, dword [ebp - 0xc]
adc edx, eax
shrd esi, edx, 3
mov esp, esp
shr edx, 3
mov dword [ebp + 8], esi
mov dword [ebp - 0x14], edx
test edx, edx
xchg esp, esp
jg 0x499b5d
jl 0x499c24
cmp esi, 0xa
mov dword [esp - 0x14], 0x63ae65c5
jae 0x499b5d
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp + 0xc]
xchg esp, esp
mov edx, dword [ebp - 0x28]
mov esi, ebx
nop
mov dword [esp - 0xc], 0x3176a1ed
mov dword [esp - 4], 0x5f0acd67
xor dword [esp - 4], 0x6c5e9d3d
xor dword [esp - 4], 0x3dde2860
mov esi, esi
xor dword [esp - 4], 0x504e8b33
sub dword [esp - 4], 0x5ec4f309
sub esp, 4
mov dword [esp - 0xc], 0x5167ea08
nop
sub esp, 4
mov dword [esp], 0x48cc293
add dword [esp], 0x6ff5b151
mov dword [esp - 0x30], edx
xor dword [esp], 0x21be76a5
xor dword [esp], 0x2712588f
xor dword [esp], 0x106f298c
sub dword [esp], 0x2d1b0cf6
mov dword [esp - 0x30], 0x27feb085
xor dword [esp], 0x35266746
push edx
push ecx
xchg ebx, ebx
lea esi, [esi - 1]
call fcn.0049a320
mov cl, al
xchg ebx, ebx
shl cl, 2
lea ebx, [ecx + eax]
mov ecx, dword [ebp - 0x1c]
mov ebp, ebp
add bl, bl
sub cl, bl
add cl, 0x30
mov byte [esi], cl
mov esp, esp
mov ecx, eax
mov dword [ebp - 0x1c], ecx
test edx, edx
jg 0x499c34
xchg ebp, ebp
jl 0x499cf2
test ecx, ecx
jne 0x499c34
mov ebx, dword [ebp - 0xc]
mov dword [esp - 0x40], ebp
mov esi, dword [ebp - 0x10]
jmp 0x499aa2
fld qword [edi + 8]
sub esp, 8
mov dword [ebp + 0xc], ebx
fstp qword [esp]
xchg ebp, ebp
push 0x4018c0
push ebx
call fcn.0049a220
mov ecx, ecx
nop
mov dword [esp - 4], 0xf903082
xor dword [esp - 4], 0x179ab19a
mov edx, edx
sub dword [esp - 4], 0x8e21e58
add dword [esp - 4], 0x600cd6cc
xor dword [esp - 4], 0x33b3324
mov ebx, ebx
add dword [esp - 4], 0x5ce8087
sub dword [esp - 4], 0x71dc8b03
sub esp, 4
mov ebp, ebp
push dword [ebp + 0xc]
add ebx, eax
call fcn.00491b30
mov ebp, ebp
add esp, 0x18
test eax, eax
je 0x499d8d
mov byte [eax], 0x13
mov dword [esp - 0x3c], esi
sub byte [eax], 7
add byte [eax], 0x24
add byte [eax], 0x2b
mov dword [esp - 0xc], edx
xor byte [eax], 0x75
jmp 0x499aa2
nop
sub esp, 4
mov dword [esp], 0x589d04e7
sub dword [esp], 0x2f3bca68
mov dword [esp - 0x34], edx
xor dword [esp], 0x1a67fc96
xor dword [esp], 0x672e4db2
sub dword [esp], 0xd2a0c0
sub dword [esp], 0x5355ea6d
xchg edx, edx
push dword [ebp + 0xc]
call fcn.00491b30
add esp, 8
test eax, eax
mov dword [esp - 0x44], edx
jne 0x499aa2
mov word [ebx], 0x9ac
xor word [ebx], 0xc66
xor word [ebx], 0x30
xchg esp, esp
xor word [ebx], 0x77f9
sub word [ebx], 0x1f56
sub word [ebx], 0x2a40
mov dword [esp - 0x10], ebx
xor word [ebx], 0x1843
add ebx, 2
jmp 0x499aa2
cmp dword [edi + 8], 0
je 0x499e46
mov dword [ebx], 0x428b0e80
mov edx, edx
add dword [ebx], 0x208063a1
sub dword [ebx], 0x26325a38
sub dword [ebx], 0x29c546ec
xor dword [ebx], 0x4b5974b8
mov dword [esp - 0x30], ebp
xor dword [ebx], 0x686537c0
add dword [ebx], 0x3545deef
add ebx, 4
jmp case.default.0x49943f
mov eax, dword [0x4018c4]
mov dword [ebx], eax
xchg ebp, ebp
mov al, byte [0x4018c8]
mov byte [ebx + 4], al
add ebx, 5
mov ebp, ebp
jmp case.default.0x49943f
mov dword [ebx], 0xcbfb8c4
add dword [ebx], 0x8db8986
add dword [ebx], 0xcee9590
add dword [ebx], 0x271fd7fa
xchg ecx, ecx
sub dword [ebx], 0x4a5d1f5
xor dword [ebx], 0x296fa8b1
add ebx, 4
jmp case.default.0x49943f
mov eax, dword [ebp + 8]
pop edi
mov ebx, ebx
pop esi
mov byte [eax], 0x5b
sub byte [eax], 0x17
mov edx, edx
xor byte [eax], 0x19
sub byte [eax], 0x4d
add byte [eax], 0x23
xor byte [eax], 0x33
mov dword [esp - 0x44], esi
mov esp, ebp
pop ebp
ret