Function at 0x438e44
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14c
mov eax, ecx
push ebx
push esi
push edi
cmp dword [eax], 0
mov dword [ebp - 0x38], eax
je 0x439918
push dword [eax]
xor ebx, ebx
push ebx
push dword [eax + 4]
call fcn.00489cc5
mov dword [ebp - 0x10], 0x6b25
add esp, 0xc
cmp dword [ebp - 0x10], 0x6c55
jle 0x438edd
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x20], edi
and dword [ebp - 0x28], 0
mov ecx, edi
mov edi, esi
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x28]
sar edi, cl
mov eax, edi
mov ecx, 0xad3d78
xor eax, esi
xor eax, ebx
cdq
push edx
push eax
call fcn.0042cb49
inc esi
cmp esi, 0x5432
jl 0x438e98
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x18]
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x5c95
jl 0x438e88
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x6081
jl 0x438e83
inc ebx
cmp ebx, 0x52d3
jl 0x438e7e
xor ebx, ebx
cmp dword [ebp - 0x10], 0x6905
jge 0x438ef5
mov edx, 0xac19a4
mov ecx, 0xad3d78
call fcn.0042f475
mov dword [ebp - 0xc], 0xfffffff6
mov dword [ebp - 0x10], 0x2df3d37a
mov dword [ebp - 0x18], 0x3420
cmp dword [ebp - 0x18], 0x3646
jle 0x438f5a
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x20], ebx
mov ebx, esi
mov esi, 0x5f0a
mov ecx, ebx
mov eax, edi
sar eax, cl
mov ecx, 0xad3d78
cdq
push edx
push eax
call fcn.0042cb49
dec ebx
dec esi
jne 0x438f21
mov esi, dword [ebp - 0x20]
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x48d4
jl 0x438f1a
inc edi
push 0
pop ebx
cmp edi, 0x369b
jl 0x438f15
push ebx
call dword [0x1efd028]
xor esi, esi
inc esi
mov dword [ebp - 4], esi
cmp dword [ebp - 0x18], 0x338b
jge 0x438f78
mov edx, 0xac19d8
mov ecx, 0xad3d78
call fcn.0042f475
mov dword [ebp - 0x14], esi
lea ecx, [ebp - 0x5c]
push 3
call fcn.0042ce8d
mov dword [ebp - 8], ebx
jmp 0x438f9a
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x5c]
mov dword [eax + ecx*4], 7
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x438f8a
mov dword [ebp - 0x18], 0x7c1e
cmp dword [ebp - 0x18], 0x7d2d
jle 0x43900c
mov esi, ebx
mov dword [ebp - 0x20], 0x29d2
xor edi, edi
mov eax, ebx
lea ecx, [ebp - 0x130]
or eax, edi
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x438fd7
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0x130]
call fcn.0040160a
inc edi
cmp edi, 0x365c
jl 0x438fbb
add ebx, esi
dec dword [ebp - 0x20]
jne 0x438fb9
inc esi
push 0
pop ebx
cmp esi, 0x2cb2
jl 0x438fb2
xor esi, esi
inc esi
mov dword [ebp - 8], ebx
jmp 0x43901f
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x60], 0x4c55
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x439011
cmp dword [ebp - 0x18], 0x7a9b
jge 0x439038
push 0xac1a24
call fcn.004f967e
pop ecx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
add eax, 0x45cc
push 0xfffffffffffffffd
pop edi
cmp eax, edi
mov eax, dword [ebp - 0x14]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setg dl
xor ecx, ecx
cmp eax, edx
setle cl
cmp ecx, dword [ebp - 0x10]
jg 0x439076
mov eax, ebx
cmp dword [ebp - 4], ebx
je 0x439078
mov eax, esi
mov dword [ebp - 0xc], eax
xor edx, edx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
cmp eax, ecx
setge dl
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x5c]
mov dword [eax + 8], ebx
mov dword [ebp - 0x60], edi
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
push dword [ebp - 0x5c]
mov dword [ebp - 0x14], esi
call fcn.004f9366
mov eax, dword [ebp - 0x38]
pop ecx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
push dword [eax + 4]
mov dword [ebp - 0x54], ebx
call fcn.004f9366
mov dword [ebp - 0x30], 0x5a8e
cmp dword [ebp - 0x30], 0x5b6f
pop ecx
jle 0x43911f
mov esi, ebx
mov edi, esi
mov ebx, 0x4d4
mov eax, edi
lea ecx, [ebp - 0x100]
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4390f4
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0x100]
call fcn.0040160a
dec edi
dec ebx
jne 0x4390da
inc esi
cmp esi, 0x5237
jl 0x4390d3
push ebx
push ebx
call dword [0x1efd124]
mov dword [ebp - 0x20], 0x6548
cmp dword [ebp - 0x20], 0x66c0
jle 0x43917c
push ebx
call dword [0x1efd438]
mov esi, ebx
mov edi, ebx
lea eax, [edi + esi]
cdq
lea ecx, [ebp - 0xd0]
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x439155
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xd0]
call fcn.0040160a
inc edi
cmp edi, 0x4c8e
jl 0x43913a
inc esi
cmp esi, 0x1218
jl 0x439138
mov dword [ebp - 8], 1
cmp dword [ebp - 0x20], 0x62c6
jge 0x439197
push 0xac1ab8
call fcn.004f967e
pop ecx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 8], ebx
jmp 0x4395f4
mov dword [ebp - 0xc], 0x16df251d
mov dword [ebp - 0x14], 9
mov dword [ebp - 0x28], 0x95ff7d1d
mov dword [ebp - 0xc], ebx
jmp 0x4395e7
mov dword [ebp - 0x18], 0x67d7
cmp dword [ebp - 0x18], 0x6957
jle 0x439209
mov edi, ebx
mov esi, ebx
mov eax, esi
cdq
idiv ebx
mov eax, edi
mov ecx, edx
shl eax, cl
mov ecx, 0xad3d78
cdq
push edx
push eax
call fcn.0042cb49
inc ebx
cmp ebx, 0x4a48
jl 0x4391d3
inc esi
push 0
pop ebx
cmp esi, 0x14ed
jl 0x4391d3
inc edi
cmp edi, 0x292e
jl 0x4391d1
mov dword [ebp - 0x20], 0xc93e
cmp dword [ebp - 0x18], 0x6432
jge 0x439228
mov edx, 0xac1ae0
mov ecx, 0xad3d78
call fcn.0042f475
mov dword [ebp - 0x14], 0x5062
cmp dword [ebp - 0x14], 0x51ef
jle 0x4392af
mov edi, ebx
jmp 0x43923e
xor ebx, ebx
mov esi, ebx
jmp 0x439244
xor ebx, ebx
mov dword [ebp - 4], 0x30a4
xor ecx, ecx
mov dword [ebp - 0x10], 0x70d
mov dword [ebp - 0x18], ecx
mov eax, edi
or eax, ecx
lea ecx, [ebp - 0x88]
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x439273
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0x88]
call fcn.0040160a
mov ecx, dword [ebp - 0x18]
add ecx, ebx
dec dword [ebp - 0x10]
mov dword [ebp - 0x18], ecx
jne 0x439257
add ebx, esi
dec dword [ebp - 4]
jne 0x43924b
inc esi
cmp esi, 0x1558
jl 0x439242
inc edi
cmp edi, 0x50ad
jl 0x43923c
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x14], 0x4ffe
jge 0x4392ca
push 0xac1b38
call fcn.004f967e
pop ecx
mov dword [ebp - 0x2c], 0xf3938425
mov dword [ebp - 0x2c], 0xadf
cmp dword [ebp - 0x2c], 0xc1b
jle 0x439360
xor esi, esi
mov dword [ebp - 0x14], esi
xor eax, eax
mov dword [ebp - 4], 0x3abf
mov dword [ebp - 0x10], eax
mov esi, dword [ebp - 0x10]
xor edi, edi
mov edx, esi
mov ecx, edi
xor ebx, ebx
shl edx, cl
mov dword [ebp - 0x24], edx
mov eax, ebx
lea ecx, [ebp - 0xa0]
and eax, edx
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x43931e
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0xa0]
call fcn.0040160a
mov edx, dword [ebp - 0x24]
inc ebx
cmp ebx, 0x1db
jl 0x439302
inc edi
cmp edi, 0x4696
jl 0x4392f7
mov esi, dword [ebp - 0x14]
add dword [ebp - 0x10], esi
dec dword [ebp - 4]
jne 0x4392f2
inc esi
mov dword [ebp - 0x14], esi
cmp esi, 0x5d0a
jl 0x4392e6
mov dword [ebp - 4], 4
cmp dword [ebp - 0x2c], 0x8ee
jge 0x43937b
push 0xac1ba0
call fcn.004f967e
pop ecx
mov dword [ebp - 0x34], 1
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0xc]
sub edx, eax
mov eax, dword [ebp - 8]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, 0xffff
setg cl
cmp eax, ecx
mov eax, dword [ebp - 8]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 8]
setge dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0xc]
setge bl
xor ecx, ecx
cmp eax, ebx
setg cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setle dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setle bl
xor ecx, ecx
cmp eax, ebx
setg cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setne dl
mov dword [ebp - 4], edx
imul eax, dword [ebp - 4], 0xbb00
test eax, eax
je 0x439555
mov dword [ebp - 0x24], 0x2b06
cmp dword [ebp - 0x24], 0x2c9b
jle 0x439477
xor esi, esi
mov dword [ebp - 0x10], esi
xor edi, edi
mov dword [ebp - 0x2c], 0x387a
xor ebx, ebx
mov esi, 0x2513
mov eax, ebx
lea ecx, [ebp - 0xb8]
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x439446
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.0040160a
add ebx, edi
dec esi
jne 0x43942c
mov esi, dword [ebp - 0x10]
add edi, esi
dec dword [ebp - 0x2c]
jne 0x439425
inc esi
mov dword [ebp - 0x10], esi
cmp esi, 0x3596
jl 0x43941c
mov dword [ebp - 0x10], 0x3fa9dfee
cmp dword [ebp - 0x24], 0x27ca
jge 0x439492
push 0xac1bf0
call fcn.004f967e
pop ecx
mov dword [ebp - 0x24], 0x967aac3b
cmp dword [ebp - 0x14], 0xfffffffb
jb 0x4394b4
mov eax, dword [ebp - 4]
xor ecx, ecx
cmp eax, 0xddd0
setl cl
cmp ecx, dword [ebp - 0x18]
jg 0x4394b4
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 8]
xor ebx, ebx
imul eax, dword [ebp - 8]
test eax, eax
jne 0x4394ca
cmp dword [ebp - 0xc], ebx
jne 0x4394ca
mov edx, ebx
jmp 0x4394cd
xor edx, edx
inc edx
inc dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 8]
sub edx, eax
mov eax, dword [ebp - 0x24]
cmp edx, 0xffffffff
setne cl
xor edx, edx
cmp ecx, eax
setl dl
sub edx, dword [ebp - 8]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x2029
setg cl
xor eax, eax
cmp ecx, 0xfffffffb
setl al
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0xfffffffb
setge cl
cmp dword [ebp - 0x10], ecx
jne 0x43951e
cmp dword [ebp - 0x18], ebx
jne 0x43951e
mov eax, ebx
jmp 0x439521
xor eax, eax
inc eax
inc eax
jne 0x439527
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x34], ebx
jne 0x43953e
cmp dword [ebp - 8], ebx
jne 0x43953e
mov eax, ebx
jmp 0x439541
xor eax, eax
inc eax
cmp eax, dword [ebp - 8]
jg 0x439549
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x34], 0x19fd8dd9
jmp 0x439570
mov eax, dword [ebp - 0xc]
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], bl
je 0x439570
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [0x1efd420]
mov dword [ebp - 0x24], 0x4d03
cmp dword [ebp - 0x24], 0x4fb4
jle 0x4395cd
mov esi, ebx
mov edi, ebx
lea eax, [edi + esi]
cdq
lea ecx, [ebp - 0xe8]
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x43959f
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xe8]
call fcn.0040160a
inc edi
cmp edi, 0x409c
jl 0x439584
inc esi
cmp esi, 0x1d7d
jl 0x439582
push ebx
call dword [0x1efd278]
dec dword [ebp - 0x28]
cmp dword [ebp - 0x24], 0x4a65
jge 0x4395e4
push 0xac1c38
call fcn.004f967e
pop ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x17
jge 0x4391bf
inc dword [ebp - 8]
cmp dword [ebp - 8], 0xe
je 0x4391a2
mov dword [ebp - 0x28], 0x3554
cmp dword [ebp - 0x28], 0x3819
jle 0x43965c
push ebx
call dword [0x1efd280]
mov esi, ebx
mov edi, ebx
mov eax, edi
lea ecx, [ebp - 0x118]
and eax, esi
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x439635
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x118]
call fcn.0040160a
inc edi
cmp edi, 0x7f0d
jl 0x439619
inc esi
cmp esi, 0x4ad6
jl 0x439617
mov byte [ebp - 0x19], bl
cmp dword [ebp - 0x28], 0x3357
jge 0x439673
push 0xac1c84
call fcn.004f967e
pop ecx
mov dword [ebp - 0x2c], 0x36ec
cmp dword [ebp - 0x2c], 0x3a1c
jle 0x439708
xor edi, edi
mov dword [ebp - 0x24], edi
xor esi, esi
mov dword [ebp - 0x28], esi
and dword [ebp - 0x34], 0
mov eax, edi
cdq
idiv esi
mov edi, dword [ebp - 0x34]
mov esi, edx
mov eax, esi
lea ecx, [ebp - 0x148]
cdq
idiv edi
mov eax, ebx
sub eax, edx
cdq
push edx
push eax
call fcn.00402035
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4396c0
mov eax, dword [eax]
push eax
call fcn.004f967e
pop ecx
push 0
push 1
lea ecx, [ebp - 0x148]
call fcn.0040160a
inc edi
cmp edi, 0x288b
jl 0x43969f
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
inc esi
mov dword [ebp - 0x28], esi
cmp esi, 0x1a81
jl 0x439691
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x1c03
jl 0x43968c
inc ebx
cmp ebx, 0x19a1
jl 0x439687
xor ebx, ebx
cmp byte [ebp - 0x19], 0
je 0x439719
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [0x1efd2c0]
cmp dword [ebp - 0x2c], 0x332e
jge 0x43972d
push 0xac1ca4
call fcn.004f967e
pop ecx
cmp dword [ebp - 0x30], 0x594e
jge 0x439741
push 0xac1a50
call fcn.004f967e
pop ecx
mov ebx, dword [ebp - 0x38]
lea ecx, [ebp - 0x50]
xor edi, edi
push 3
mov dword [ebx + 4], edi
call fcn.0042ce8d
mov dword [ebp - 0xc], 0xdada439b
mov dword [ebp - 0x30], 0x1f33
cmp dword [ebp - 0x30], 0x2090
jle 0x43979b
push edi
push edi
push edi
call dword [0x1efd128]
mov esi, edi
mov eax, edi
mov ecx, 0xad3d78
xor eax, esi
cdq
push edx
push eax
call fcn.0042cb49
inc edi
cmp edi, 0x287a
jl 0x439775
inc esi
push 0
pop edi
cmp esi, 0x44b1
jl 0x439775
cmp dword [ebp - 0x30], 0x1d20
jge 0x4397b3
mov edx, 0xac1ccc
mov ecx, 0xad3d78
call fcn.0042f475
mov dword [ebp - 4], edi
jmp 0x4397c8
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x50]
mov dword [eax + ecx*4], 1
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x4397b8
mov dword [ebp - 0xc], edi
cmp dword [ebp - 0xc], 2
jg 0x439907
mov eax, dword [ebp - 0x50]
mov ebx, 0x3d0bb94d
mov dword [ebp - 0x34], eax
push 3
lea ecx, [ebp - 0x44]
call fcn.0042ce8d
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 4], edi
jmp 0x439811
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x44]
mov dword [eax + ecx*4], 0x707dfe4d
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x439801
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0xc]
mov dword [eax + 4], 0xfffe
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + ecx*4]
sub eax, 0xfffe
jne 0x439866
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x50]
cmp dword [esi + 4], 1
setne cl
xor eax, eax
cmp ecx, dword [esi + edx*4]
mov ecx, dword [ebp - 0xc]
setl al
xor edx, edx
cmp eax, dword [esi]
mov eax, dword [ebp - 0x50]
setne dl
mov dword [eax + ecx*4], edx
test edx, edx
jne 0x439866
mov eax, edi
jmp 0x439869
xor eax, eax
inc eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x28], 0x6693
cmp dword [ebp - 0x28], 0x682a
jle 0x4398c5
mov dword [ebp - 0x30], edi
xor esi, esi
mov eax, edi
xor ebx, ebx
cdq
idiv esi
mov edi, edx
mov ecx, ebx
mov eax, edi
shl eax, cl
mov ecx, 0xad3d78
cdq
push edx
push eax
call fcn.0042cb49
inc ebx
cmp ebx, 0xdc4
jl 0x43988a
mov edi, dword [ebp - 0x30]
inc esi
cmp esi, 0x60e0
jl 0x439881
inc edi
mov dword [ebp - 0x30], edi
cmp edi, 0xa2d
jl 0x43987f
xor edi, edi
mov ebx, 0x3d0bb94d
mov eax, dword [ebp - 0x34]
cmp dword [eax + 8], edi
jne 0x4398e5
cmp dword [ebp - 0x28], 0x6404
jge 0x4398e5
mov edx, 0xac1d0c
mov ecx, 0xad3d78
call fcn.0042f475
push dword [ebp - 0x44]
call fcn.004f9366
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x44], edi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
pop ecx
jle 0x4397e6
mov ebx, dword [ebp - 0x38]
cmp dword [ebp - 0x50], 0
je 0x439916
push dword [ebp - 0x50]
call fcn.004f9366
pop ecx
mov dword [ebx], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret