Function at 0x451200
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x50
push ebx
push ebp
mov ebp, dword [esp + 0x68]
push esi
mov esi, dword [esp + 0x74]
push edi
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 0x50]
mov edi, dword [esp + 0x68]
sub ecx, esi
mov dword [esp + 0x78], ecx
inc eax
mov ecx, 0x120
xor ebx, ebx
mov dword [esp + 0x24], eax
cmp ecx, ebx
mov eax, edi
jle 0x45123e
mov dword [eax], ebx
add eax, 4
mov dword [eax], ebx
add eax, 4
dec ecx
jne 0x451231
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x44]
mov edx, dword [ebp + 0x48]
mov esi, 0x120
sub esi, eax
sar esi, 1
cmp eax, ecx
mov dword [esp + 0x28], esi
jg 0x451266
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
jmp 0x451288
cmp eax, edx
mov dword [esp + 0x44], ecx
jg 0x45127a
sub eax, ecx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], eax
jmp 0x451288
mov esi, edx
sub esi, ecx
sub eax, edx
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], eax
lea esi, [esp + 0x44]
mov ebx, 3
mov eax, dword [esi]
test eax, eax
jge 0x4512b0
push eax
push str.mpg123:_Bogus_region_length___d__n
push 0x467a10
call fcn.00429b9d
add esp, 0xc
mov dword [esi], 0
add esi, 4
dec ebx
jne 0x451291
mov eax, dword [ebp + 0x10]
mov ecx, 2
cmp eax, ecx
jne 0x45182e
mov eax, dword [ebp + 0x14]
xor edx, edx
cmp eax, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x10], edx
je 0x45130b
mov eax, dword [esp + 0x74]
mov dword [esp + 0x5c], 0xffffffff
mov dword [esp + 0x58], ecx
mov dword [esp + 0x54], ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x50], ecx
shl eax, 2
mov esi, dword [eax + 0x4778f8]
mov eax, dword [eax + 0x4839c4]
jmp 0x451334
or eax, 0xffffffff
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x74]
lea eax, [eax + eax*2]
shl eax, 2
mov esi, dword [eax + 0x4778fc]
mov eax, dword [eax + 0x4839c8]
mov dword [esp + 0x20], edx
lea edx, [esp + 0x44]
add ebp, 0x18
mov dword [esp + 0x40], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x30]
mov ecx, dword [ebp]
mov eax, dword [eax]
lea edx, [ecx*8 + 0x461c78]
test eax, eax
mov dword [esp + 0x2c], edx
je 0x451598
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x34], eax
jmp 0x451381
mov ebx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
test eax, eax
jne 0x4513f7
mov eax, dword [esi]
mov edi, dword [esp + 0x68]
add esi, 4
mov dword [esp + 0x20], eax
mov eax, dword [esi]
add esi, 4
add esi, 4
lea edi, [edi + eax*4]
mov eax, dword [esi - 4]
mov ebp, dword [esi]
add esi, 4
cmp eax, 3
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], ebp
jne 0x4513d9
mov eax, dword [edx]
mov dword [esp + 0x18], 1
shl eax, cl
mov ecx, dword [ebx + 0x64]
add edx, 4
mov dword [esp + 0x6c], edx
fld dword [ecx + eax*4]
fstp dword [esp + 0x10]
jmp 0x4513f7
mov ebp, dword [edx]
mov eax, dword [ebx + eax*4 + 0x58]
shl ebp, cl
add edx, 4
mov dword [esp + 0x18], 3
mov dword [esp + 0x6c], edx
fld dword [eax + ebp*4]
fstp dword [esp + 0x10]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [ecx + 4]
movsx ebp, word [ebx]
add ebx, 2
test ebp, ebp
jge 0x451431
mov edx, dword [esp + 0x64]
push edx
call fcn.004503f0
add esp, 4
test eax, eax
je 0x45141e
neg ebp
lea ebx, [ebx + ebp*2]
movsx ebp, word [ebx]
mov edx, dword [esp + 0x78]
add ebx, 2
dec edx
test ebp, ebp
mov dword [esp + 0x78], edx
jl 0x451408
mov ebx, ebp
and ebp, 0xf
sar ebx, 4
cmp ebx, 0xf
jne 0x451491
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x2c]
mov dword [esp + ecx*4 + 0x50], eax
or ecx, 0xffffffff
mov eax, dword [edx]
mov edx, dword [esp + 0x78]
sub ecx, eax
push eax
add edx, ecx
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x68]
push edx
call fcn.0044dbd0
mov ebx, eax
mov eax, dword [esp + 0x6c]
push eax
add ebx, 0xf
call fcn.004503f0
fld dword [esp + 0x1c]
fmul dword [ebx*4 + 0x47b988]
add esp, 0xc
test eax, eax
je 0x45148d
fchs
fstp dword [edi]
jmp 0x4514d2
test ebx, ebx
je 0x4514cc
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x1c]
push eax
mov dword [esp + ecx*4 + 0x54], edx
call fcn.004503f0
fld dword [esp + 0x14]
fmul dword [ebx*4 + 0x47b988]
add esp, 4
test eax, eax
je 0x4514bf
fchs
mov eax, dword [esp + 0x78]
fstp dword [edi]
dec eax
mov dword [esp + 0x78], eax
jmp 0x4514d2
mov dword [edi], 0
mov ecx, dword [esp + 0x18]
lea eax, [ecx*4]
add edi, eax
cmp ebp, 0xf
jne 0x451536
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x64]
mov dword [esp + eax*4 + 0x50], edx
or edx, 0xffffffff
mov eax, dword [ecx]
mov ecx, dword [esp + 0x78]
sub edx, eax
push eax
add ecx, edx
push ebp
mov dword [esp + 0x80], ecx
call fcn.0044dbd0
mov ebx, eax
push ebp
add ebx, 0xf
call fcn.004503f0
fld dword [esp + 0x1c]
fmul dword [ebx*4 + 0x47b988]
add esp, 0xc
test eax, eax
je 0x451532
fchs
fstp dword [edi]
jmp 0x451577
test ebp, ebp
je 0x451571
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x1c]
push edx
mov dword [esp + ecx*4 + 0x54], eax
call fcn.004503f0
fld dword [esp + 0x14]
fmul dword [ebp*4 + 0x47b988]
add esp, 4
test eax, eax
je 0x451564
fchs
mov eax, dword [esp + 0x78]
fstp dword [edi]
dec eax
mov dword [esp + 0x78], eax
jmp 0x451577
mov dword [edi], 0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
shl eax, 2
add edi, eax
mov eax, dword [esp + 0x34]
dec ecx
dec eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x34], eax
jne 0x451379
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
add edx, 4
add ebp, 4
dec eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], eax
jne 0x45134f
mov eax, dword [esp + 0x28]
test eax, eax
je 0x45175b
mov eax, dword [esp + 0x78]
test eax, eax
jle 0x45175b
mov ecx, dword [esp + 0x70]
mov edx, dword [ecx + 0x54]
mov ebx, dword [edx*8 + 0x461d7c]
mov bp, word [ebx]
add ebx, 2
test bp, bp
jge 0x45162a
mov eax, dword [esp + 0x78]
dec eax
mov dword [esp + 0x78], eax
js 0x45161f
mov eax, dword [esp + 0x64]
push eax
call fcn.004503f0
add esp, 4
test eax, eax
je 0x451612
movsx ecx, bp
neg ecx
lea ebx, [ebx + ecx*2]
mov bp, word [ebx]
add ebx, 2
test bp, bp
jl 0x4515ee
jmp 0x45162a
mov eax, dword [esp + 0x78]
inc eax
xor ebp, ebp
mov dword [esp + 0x78], eax
movsx edx, bp
xor ebx, ebx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x30], ebx
test bl, 1
jne 0x4516e0
mov ebp, dword [esp + 0x20]
test ebp, ebp
jne 0x4516d5
mov ebp, dword [esi]
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x68]
add esi, 4
add esi, 4
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0x24]
mov eax, dword [esi]
mov edx, dword [esi + 4]
add esi, 4
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x6c]
add esi, 4
cmp eax, 3
mov dword [esp + 0x14], eax
mov ebx, dword [edx]
jne 0x4516aa
shl ebx, cl
mov ecx, dword [esp + 0x70]
add edx, 4
dec ebp
mov dword [esp + 0x6c], edx
mov ecx, dword [ecx + 0x64]
mov dword [esp + 0x18], 1
mov dword [esp + 0x20], ebp
fld dword [ecx + ebx*4]
mov ebx, dword [esp + 0x30]
fstp dword [esp + 0x10]
jmp 0x4516e4
shl ebx, cl
mov ecx, dword [esp + 0x70]
add edx, 4
dec ebp
mov dword [esp + 0x6c], edx
mov ecx, dword [ecx + eax*4 + 0x58]
mov dword [esp + 0x18], 3
mov dword [esp + 0x20], ebp
fld dword [ecx + ebx*4]
mov ebx, dword [esp + 0x30]
fstp dword [esp + 0x10]
jmp 0x4516e4
mov eax, dword [esp + 0x14]
dec ebp
mov dword [esp + 0x20], ebp
jmp 0x4516e4
mov eax, dword [esp + 0x14]
mov edx, 8
mov ecx, ebx
sar edx, cl
mov ecx, dword [esp + 0x3c]
test ecx, edx
je 0x45172b
mov edx, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0x50], edx
mov eax, dword [esp + 0x78]
dec eax
mov dword [esp + 0x78], eax
js 0x451748
mov eax, dword [esp + 0x64]
push eax
call fcn.004503f0
add esp, 4
test eax, eax
je 0x451723
fld dword [esp + 0x10]
fchs
fstp dword [edi]
jmp 0x451731
mov ecx, dword [esp + 0x10]
mov dword [edi], ecx
jmp 0x451731
mov dword [edi], 0
mov edx, dword [esp + 0x18]
inc ebx
cmp ebx, 4
mov dword [esp + 0x30], ebx
lea edi, [edi + edx*4]
jl 0x451637
jmp 0x45174c
inc dword [esp + 0x78]
mov eax, dword [esp + 0x28]
dec eax
mov dword [esp + 0x28], eax
jne 0x4515c9
mov ebx, dword [esp + 0x40]
cmp esi, ebx
jae 0x4517b5
mov ebp, dword [esp + 0x68]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
test ecx, ecx
jne 0x451799
mov ecx, dword [esi]
mov eax, dword [esi + 4]
add esi, 4
add esi, 4
lea edi, [ebp + eax*4]
mov edx, dword [esi]
add esi, 4
cmp edx, 3
mov edx, 1
je 0x451796
mov edx, 3
add esi, 4
lea eax, [edx*4]
mov dword [edi], 0
add edi, eax
dec ecx
mov dword [edi], 0
add edi, eax
cmp esi, ebx
jb 0x45176f
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x70]
lea edx, [ecx + 1]
mov dword [eax + 0x30], edx
mov edx, dword [esp + 0x54]
cmp ecx, edx
lea esi, [edx + 1]
mov dword [eax + 0x34], esi
mov esi, dword [esp + 0x58]
lea edi, [esi + 1]
mov dword [eax + 0x38], edi
mov edi, dword [esp + 0x5c]
lea ebx, [edi + 1]
mov dword [eax + 0x3c], ebx
jg 0x4517e7
mov ecx, edx
cmp ecx, esi
jg 0x4517ed
mov ecx, esi
inc ecx
test ecx, ecx
je 0x451811
mov edx, dword [esp + 0x74]
lea esi, [edx*8]
sub esi, edx
lea ecx, [ecx + esi*2]
mov ecx, dword [ecx*4 + 0x4785e0]
mov dword [eax + 0x40], ecx
jmp 0x451c3d
mov ecx, dword [esp + 0x74]
lea edx, [ecx + ecx*2]
shl edx, 3
sub edx, ecx
add edx, edi
mov ecx, dword [edx*4 + 0x477ea8]
mov dword [eax + 0x40], ecx
jmp 0x451c3d
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x14], 0x462300
test eax, eax
jne 0x451845
mov dword [esp + 0x14], 0x462358
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x70]
xor ecx, ecx
add edx, 0x18
mov dword [esp + 0x20], ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], ecx
mov ebp, dword [eax*4 + 0x477900]
lea ecx, [esp + 0x44]
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x3c], 3
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
mov edx, dword [ecx]
mov eax, dword [eax]
test eax, eax
lea ecx, [edx*8 + 0x461c78]
mov dword [esp + 0x30], ecx
je 0x451a7a
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4518f3
mov edx, dword [ebp]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x6c]
mov ecx, dword [eax]
add ebp, 4
mov esi, dword [edx]
add edx, 4
add esi, ecx
mov ecx, dword [esp + 0x24]
shl esi, cl
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x6c], edx
mov edx, dword [ebp]
add eax, 4
mov ecx, dword [ecx + 0x64]
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], edx
add ebp, 4
fld dword [ecx + esi*4]
fstp dword [esp + 0x10]
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 4]
movsx ebx, word [esi]
add esi, 2
test ebx, ebx
jge 0x45192d
mov ecx, dword [esp + 0x64]
push ecx
call fcn.004503f0
add esp, 4
test eax, eax
je 0x45191a
neg ebx
lea esi, [esi + ebx*2]
movsx ebx, word [esi]
mov edx, dword [esp + 0x78]
add esi, 2
dec edx
test ebx, ebx
mov dword [esp + 0x78], edx
jl 0x451904
mov esi, ebx
and ebx, 0xf
sar esi, 4
cmp esi, 0xf
jne 0x451989
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x20]
or ecx, 0xffffffff
mov dword [esp + 0x1c], edx
mov eax, dword [eax]
mov edx, dword [esp + 0x78]
sub ecx, eax
push eax
add edx, ecx
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x68]
push edx
call fcn.0044dbd0
mov esi, eax
mov eax, dword [esp + 0x6c]
push eax
add esi, 0xf
call fcn.004503f0
fld dword [esp + 0x1c]
fmul dword [esi*4 + 0x47b988]
add esp, 0xc
test eax, eax
je 0x451985
fchs
fstp dword [edi]
jmp 0x4519c9
test esi, esi
je 0x4519c3
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x20]
push edx
mov dword [esp + 0x20], ecx
call fcn.004503f0
fld dword [esp + 0x14]
fmul dword [esi*4 + 0x47b988]
add esp, 4
test eax, eax
je 0x4519b3
fchs
fstp dword [edi]
mov eax, dword [esp + 0x78]
add edi, 4
dec eax
mov dword [esp + 0x78], eax
jmp 0x4519cc
mov dword [edi], 0
add edi, 4
cmp ebx, 0xf
jne 0x451a1f
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx]
mov ecx, dword [esp + 0x78]
or edx, 0xffffffff
push eax
sub edx, eax
push ebx
add ecx, edx
mov dword [esp + 0x80], ecx
call fcn.0044dbd0
mov esi, eax
push ebx
add esi, 0xf
call fcn.004503f0
fld dword [esp + 0x1c]
fmul dword [esi*4 + 0x47b988]
add esp, 0xc
test eax, eax
je 0x451a1b
fchs
fstp dword [edi]
jmp 0x451a5f
test ebx, ebx
je 0x451a59
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x20]
push ecx
mov dword [esp + 0x20], eax
call fcn.004503f0
fld dword [esp + 0x14]
fmul dword [ebx*4 + 0x47b988]
add esp, 4
test eax, eax
je 0x451a49
fchs
fstp dword [edi]
mov eax, dword [esp + 0x78]
add edi, 4
dec eax
mov dword [esp + 0x78], eax
jmp 0x451a62
mov dword [edi], 0
add edi, 4
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
dec ecx
dec eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x40], eax
jne 0x4518a7
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
mov eax, 4
add edx, eax
add ecx, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x2c], edx
dec eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x3c], eax
jne 0x451884
mov eax, dword [esp + 0x28]
test eax, eax
je 0x451bf2
mov eax, dword [esp + 0x78]
test eax, eax
jle 0x451bf2
mov edx, dword [esp + 0x70]
mov eax, dword [edx + 0x54]
mov esi, dword [eax*8 + 0x461d7c]
mov bx, word [esi]
add esi, 2
test bx, bx
jge 0x451b0f
mov eax, dword [esp + 0x78]
dec eax
mov dword [esp + 0x78], eax
js 0x451b04
mov ecx, dword [esp + 0x64]
push ecx
call fcn.004503f0
add esp, 4
test eax, eax
je 0x451af7
movsx edx, bx
neg edx
lea esi, [esi + edx*2]
mov bx, word [esi]
add esi, 2
test bx, bx
jl 0x451ad3
jmp 0x451b0f
mov eax, dword [esp + 0x78]
inc eax
xor ebx, ebx
mov dword [esp + 0x78], eax
movsx ecx, bx
xor eax, eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x34], eax
test al, 1
jne 0x451b70
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x451b6c
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
mov esi, dword [esp + 0x6c]
add ebp, 4
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x14]
mov ebx, dword [esi]
mov dword [esp + 0x20], ecx
mov ecx, dword [edx]
add ebp, 4
add ebx, ecx
mov ecx, dword [esp + 0x24]
shl ebx, cl
mov ecx, dword [esp + 0x70]
add edx, 4
add esi, 4
mov dword [esp + 0x14], edx
mov ecx, dword [ecx + 0x64]
mov dword [esp + 0x6c], esi
fld dword [ecx + ebx*4]
fstp dword [esp + 0x10]
dec dword [esp + 0x18]
mov edx, 8
mov ecx, eax
sar edx, cl
mov ecx, dword [esp + 0x40]
test ecx, edx
je 0x451bc6
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x20]
dec eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x78], eax
js 0x451bdf
mov eax, dword [esp + 0x64]
push eax
call fcn.004503f0
add esp, 4
test eax, eax
je 0x451bb7
fld dword [esp + 0x10]
mov eax, dword [esp + 0x34]
add edi, 4
fchs
fstp dword [edi - 4]
jmp 0x451bcf
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x34]
mov dword [edi], ecx
add edi, 4
jmp 0x451bcf
mov dword [edi], 0
add edi, 4
inc eax
cmp eax, 4
mov dword [esp + 0x34], eax
jl 0x451b1c
jmp 0x451be3
inc dword [esp + 0x78]
mov eax, dword [esp + 0x28]
dec eax
mov dword [esp + 0x28], eax
jne 0x451aae
mov eax, dword [esp + 0x68]
sub eax, edi
add eax, 0x900
sar eax, 3
je 0x451c17
mov dword [edi], 0
add edi, 4
mov dword [edi], 0
add edi, 4
dec eax
jne 0x451c02
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x1c]
lea esi, [ecx + ecx*2]
lea eax, [edx + 1]
mov edx, dword [esp + 0x70]
shl esi, 3
sub esi, ecx
mov dword [edx + 0x3c], eax
add esi, eax
mov eax, dword [esi*4 + 0x477ea4]
mov dword [edx + 0x40], eax
mov eax, dword [esp + 0x78]
cmp eax, 0x10
jle 0x451c6b
lea esi, [eax - 1]
shr esi, 4
mov ecx, esi
neg ecx
shl ecx, 4
add eax, ecx
mov dword [esp + 0x78], eax
mov edx, dword [esp + 0x64]
push 0x10
push edx
call fcn.0044dbd0
add esp, 8
dec esi
jne 0x451c59
mov eax, dword [esp + 0x78]
pop edi
pop esi
pop ebp
test eax, eax
pop ebx
jle 0x451c8b
mov ecx, dword [esp + 0x54]
push eax
push ecx
call fcn.0044dbd0
add esp, 8
xor eax, eax
add esp, 0x50
ret
jge 0x451c85
mov eax, dword [esp + 0x68]
neg eax
push eax
push str.mpg123:_Cant_rewind_stream_by__d_bits__n
push 0x467a10
call fcn.00429b9d
add esp, 0xc
mov eax, 1
add esp, 0x50
ret