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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x10]
mov eax, dword [esi + 0x164]
mov dword [ebp - 0x20], eax
cmp edi, dword [esi + 0x90]
jne 0x571f61
lea ecx, [esi + 0x124]
lea ebx, [esi + 0x120]
mov dword [ebp - 0x18], ecx
jmp 0x571f6d
mov ebx, dword [esi + 0x12c]
lea eax, [ebx + 4]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xc], ebx
mov dword [ebx], eax
mov eax, dword [ebp + 0x14]
lea ecx, [ebp - 8]
push ecx
push dword [ebp + 0x18]
mov dword [ebp - 8], eax
push eax
mov eax, dword [edi + 4]
push edi
call eax
mov edx, dword [ebp - 0x18]
add eax, 5
mov ecx, dword [ebp - 8]
add esp, 0x10
mov dword [edx], ecx
cmp eax, 0x12
ja case.default.0x571f9c
jmp dword [eax*4 + 0x5729a0]
mov eax, dword [ebp - 8]
sub eax, dword [edi + 0x44]
push eax
mov eax, dword [ebp + 0x14]
add eax, dword [edi + 0x44]
push eax
mov eax, dword [edi + 0x30]
push edi
call eax
add esp, 0xc
mov byte [ebp + 0xb], al
test al, al
je 0x571ff3
mov eax, dword [esi + 0x3c]
test eax, eax
je case.default.0x571f9c
push 1
lea ecx, [ebp + 0xb]
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x572060
cmp dword [esi + 0x50], 0
je 0x572060
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
jmp 0x572060
mov eax, dword [ebp - 8]
sub eax, dword [edi + 0x44]
mov ebx, dword [ebp - 0x20]
push eax
mov eax, dword [ebp + 0x14]
add eax, dword [edi + 0x44]
push eax
lea eax, [ebx + 0x50]
push edi
push eax
call fcn.00576190
add esp, 0x10
mov dword [ebp - 0x24], eax
test eax, eax
je 0x5727c3
push 0
push eax
push ebx
push esi
call fcn.00575180
mov ebx, eax
add esp, 0x10
mov eax, dword [ebp - 0x20]
cmp byte [eax + 0x81], 0
mov ecx, dword [eax + 0x60]
mov dword [eax + 0x5c], ecx
je 0x57209e
cmp byte [eax + 0x82], 0
jne 0x57209e
test ebx, ebx
jne 0x5720b0
mov eax, dword [esi + 0x78]
test eax, eax
je 0x572086
push ebx
push dword [ebp - 0x24]
push dword [esi + 4]
call eax
add esp, 0xc
mov ebx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov dword [ebp + 0x14], eax
mov dword [ebx], eax
mov eax, dword [esi + 0x1e0]
sub eax, 2
je 0x572991
dec eax
je 0x572980
mov edi, dword [ebp + 0x10]
jmp 0x571f75
cmp dword [esi + 0x50], 0
je 0x57205d
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
jmp 0x57205d
test ebx, ebx
je 0x5727ae
cmp byte [ebx + 0x22], 0
je 0x5727a2
cmp byte [ebx + 0x20], 0
jne 0x572796
cmp dword [ebx + 0x1c], 0
jne 0x57278a
cmp dword [ebx + 4], 0
je 0x5720fc
cmp byte [esi + 0x134], 0
jne 0x5720e3
mov eax, dword [esi + 0x78]
test eax, eax
je 0x572086
push 0
push dword [ebx]
jmp 0x572055
push 0
push ebx
push esi
call fcn.005761e0
add esp, 0xc
test eax, eax
jne 0x572996
jmp 0x57205d
cmp dword [esi + 0x70], 0
je 0x572086
push esi
mov byte [ebx + 0x20], 1
call fcn.00574a90
add esp, 4
mov byte [ebx + 0x20], 0
test eax, eax
je 0x5727c3
push dword [ebx + 0x18]
push dword [ebx + 0x10]
push dword [ebx + 0x14]
push eax
push dword [esi + 0x74]
mov eax, dword [esi + 0x70]
call eax
add esp, 0x14
test eax, eax
je 0x57277e
mov eax, dword [esi + 0x1b0]
mov dword [esi + 0x1ac], eax
jmp 0x57205d
mov ebx, dword [esi + 0x170]
test ebx, ebx
je 0x57215d
mov eax, dword [ebx]
mov dword [esi + 0x170], eax
jmp 0x57218c
mov eax, dword [esi + 0xc]
push 0x30
call eax
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x5727c3
mov ecx, dword [esi + 0xc]
push 0x20
call ecx
add esp, 4
mov dword [ebx + 0x24], eax
test eax, eax
je 0x5727ba
add eax, 0x20
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], 0
mov eax, dword [esi + 0x16c]
mov dword [ebx], eax
mov dword [esi + 0x16c], ebx
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
mov eax, dword [ebp + 0x14]
add eax, dword [edi + 0x44]
push eax
mov dword [ebx + 4], eax
mov eax, dword [edi + 0x20]
push edi
call eax
mov dword [ebx + 8], eax
inc dword [esi + 0x138]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
add ecx, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x24]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x28]
dec eax
mov dword [ebp - 0x1c], ecx
push eax
lea eax, [ebp - 0x10]
push eax
push ecx
lea eax, [ebp - 0x14]
push eax
mov eax, dword [edi + 0x3c]
push edi
call eax
mov eax, dword [ebp - 0x10]
add esp, 0x1c
sub eax, dword [ebx + 0x24]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x14], ecx
je 0x57225c
mov eax, dword [ebx + 0x24]
mov edi, dword [ebx + 0x28]
sub edi, eax
add edi, edi
push edi
push eax
mov eax, dword [esi + 0x10]
call eax
add esp, 8
test eax, eax
je 0x5727c3
lea ecx, [eax + edi]
mov dword [ebx + 0x24], eax
add eax, dword [ebp - 0x24]
mov edi, dword [ebp + 0x10]
mov dword [ebx + 0x28], ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x28]
dec eax
push eax
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x1c]
lea eax, [ebp - 0x14]
push eax
mov eax, dword [edi + 0x3c]
push edi
call eax
mov eax, dword [ebp - 0x10]
add esp, 0x14
sub eax, dword [ebx + 0x24]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x14], ecx
jne 0x572204
mov dword [ebx + 0x18], eax
lea ecx, [ebx + 0xc]
mov eax, dword [ebx + 0x24]
mov dword [ecx], eax
mov eax, dword [ebp - 0x10]
mov byte [eax], 0
lea eax, [ebx + 0x2c]
push eax
push ecx
push dword [ebp + 0x14]
push edi
push esi
call fcn.00576c90
add esp, 0x14
test eax, eax
jne 0x572996
mov eax, dword [esi + 0x34]
test eax, eax
je 0x5722b3
push dword [esi + 0x188]
push dword [ebx + 0xc]
push dword [esi + 4]
call eax
add esp, 0xc
lea eax, [esi + 0x1a0]
push eax
call fcn.00575e20
add esp, 4
jmp 0x57205d
cmp dword [esi + 0x50], 0
je 0x5722c9
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
lea eax, [esi + 0x1a0]
push eax
call fcn.00575e20
add esp, 4
jmp 0x57205d
mov edi, dword [edi + 0x44]
mov ebx, dword [ebp + 0x10]
add edi, dword [ebp + 0x14]
push edi
push ebx
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x24], 0
mov byte [ebp - 1], 1
call eax
add eax, edi
push eax
push edi
push ebx
lea edi, [esi + 0x1a0]
push edi
call fcn.00575af0
add esp, 0x18
test eax, eax
je 0x572335
mov eax, dword [edi + 0xc]
cmp eax, dword [edi + 8]
jne 0x572329
push edi
call fcn.00576040
add esp, 4
test al, al
jne 0x572329
xor eax, eax
jmp 0x572335
mov eax, dword [edi + 0xc]
mov byte [eax], 0
inc dword [edi + 0xc]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x5727c3
mov eax, dword [esi + 0x1ac]
mov dword [esi + 0x1b0], eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp + 0x14]
push ebx
push esi
call fcn.00576c90
add esp, 0x14
test eax, eax
jne 0x572996
mov eax, dword [esi + 0x1ac]
mov ecx, dword [ebp - 0x40]
mov dword [esi + 0x1b0], eax
mov eax, dword [esi + 0x34]
test eax, eax
je 0x572395
push dword [esi + 0x188]
push ecx
push dword [esi + 4]
call eax
mov ecx, dword [ebp - 0x40]
add esp, 0xc
xor al, al
jmp 0x572398
mov al, byte [ebp - 1]
cmp dword [esi + 0x38], 0
je 0x5723bc
cmp dword [esi + 0x34], 0
je 0x5723ae
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0xc]
mov eax, dword [eax]
mov dword [edx], eax
mov eax, dword [esi + 0x38]
push ecx
push dword [esi + 4]
call eax
add esp, 8
jmp 0x5723d6
test al, al
je 0x5723d6
cmp dword [esi + 0x50], 0
je 0x5723d6
push dword [ebp - 8]
push dword [ebp + 0x14]
push ebx
push esi
call fcn.005766e0
add esp, 0x10
push edi
call fcn.00575e20
mov edi, dword [ebp - 0x24]
add esp, 4
test edi, edi
je 0x57241a
mov ecx, dword [esi + 0x68]
mov ebx, edi
test ecx, ecx
je 0x5723fb
mov eax, dword [edi]
push dword [eax]
push dword [esi + 4]
call ecx
add esp, 8
mov eax, dword [esi + 0x178]
lea ecx, [edi + 4]
mov edi, dword [ecx]
mov dword [ecx], eax
mov dword [esi + 0x178], ebx
mov ecx, dword [ebx]
mov eax, dword [ebx + 8]
mov dword [ecx + 4], eax
test edi, edi
jne 0x5723e6
cmp dword [esi + 0x138], 0
jne 0x57205d
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp - 8]
push esi
call fcn.00574670
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
cmp dword [esi + 0x138], eax
je 0x57287b
mov ebx, dword [esi + 0x16c]
mov eax, dword [ebx]
mov dword [esi + 0x16c], eax
mov eax, dword [esi + 0x170]
mov dword [ebx], eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x170], ebx
mov ecx, dword [edi + 0x44]
lea eax, [eax + ecx*2]
push eax
mov dword [ebp - 0x24], eax
mov eax, dword [edi + 0x20]
push edi
call eax
add esp, 8
cmp eax, dword [ebx + 8]
jne 0x5727cf
mov ecx, dword [ebx + 4]
sub eax, 4
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
jb 0x5724af
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x5724b4
mov eax, dword [ebp - 0x14]
add ecx, 4
add edx, 4
sub eax, 4
mov dword [ebp - 0x14], eax
jae 0x572498
cmp eax, 0xfffffffc
je 0x5724f4
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x5727cf
cmp dword [ebp - 0x14], 0xfffffffd
je 0x5724f4
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x5727cf
cmp dword [ebp - 0x14], 0xfffffffe
je 0x5724f4
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x5727cf
cmp dword [ebp - 0x14], 0xffffffff
je 0x5724f4
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x5727cf
dec dword [esi + 0x138]
cmp dword [esi + 0x38], 0
je 0x57256f
cmp byte [esi + 0xec], 0
mov eax, dword [ebx + 0x10]
je 0x57255f
test eax, eax
je 0x57255f
mov ecx, dword [ebx + 0x1c]
mov dl, byte [eax]
add ecx, dword [ebx + 0xc]
test dl, dl
je 0x57252a
lea esp, [esp]
inc eax
mov byte [ecx], dl
inc ecx
mov dl, byte [eax]
test dl, dl
jne 0x572520
cmp byte [esi + 0xed], 0
mov edx, dword [ebx + 0x14]
je 0x57255c
test edx, edx
je 0x57255c
mov al, byte [esi + 0x1d8]
mov byte [ecx], al
inc ecx
mov al, byte [edx]
test al, al
je 0x57255c
lea esp, [esp]
mov byte [ecx], al
lea edx, [edx + 1]
mov al, byte [edx]
inc ecx
test al, al
jne 0x572550
mov byte [ecx], 0
push dword [ebx + 0xc]
mov eax, dword [esi + 0x38]
push dword [esi + 4]
call eax
add esp, 8
jmp 0x572585
cmp dword [esi + 0x50], 0
je 0x572585
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
cmp dword [ebx + 0x2c], 0
je 0x5725cc
jmp 0x572590
mov ecx, dword [esi + 0x68]
mov edi, dword [ebx + 0x2c]
test ecx, ecx
je 0x5725a6
mov eax, dword [edi]
push dword [eax]
push dword [esi + 4]
call ecx
add esp, 8
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + 4]
mov dword [ebx + 0x2c], eax
mov eax, dword [esi + 0x178]
mov dword [edi + 4], eax
mov dword [esi + 0x178], edi
mov ecx, dword [edi]
mov eax, dword [edi + 8]
mov dword [ecx + 4], eax
cmp dword [ebx + 0x2c], 0
jne 0x572590
cmp dword [esi + 0x138], 0
je 0x572427
jmp 0x57205d
push dword [ebp + 0x14]
mov eax, dword [edi + 0x2c]
push edi
call eax
add esp, 8
test eax, eax
js 0x5727e3
cmp dword [esi + 0x3c], 0
je case.default.0x571f9c
lea ecx, [ebp - 0x28]
push ecx
push eax
call fcn.0057cca0
push eax
lea eax, [ebp - 0x28]
push eax
push dword [esi + 4]
mov eax, dword [esi + 0x3c]
call eax
add esp, 0x14
jmp 0x572060
mov eax, dword [esi + 0x3c]
test eax, eax
je case.default.0x571f9c
push 1
lea ecx, [ebp - 1]
mov byte [ebp - 1], 0xa
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x572060
mov eax, dword [esi + 0x48]
test eax, eax
je 0x57264e
push dword [esi + 4]
call eax
add esp, 4
jmp 0x572664
cmp dword [esi + 0x50], 0
je 0x572664
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
push dword [ebp + 0x20]
lea eax, [ebp - 8]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
push edi
push esi
call fcn.00571c90
add esp, 0x18
test eax, eax
jne 0x572996
cmp dword [ebp - 8], eax
jne 0x572060
pop edi
mov dword [esi + 0x118], 0x571ab0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esi + 0x3c]
test ebx, ebx
je 0x572086
cmp byte [edi + 0x48], 0
jne 0x572738
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 8]
lea eax, [ebp + 0x14]
push eax
mov eax, dword [edi + 0x3c]
push edi
call eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp + 0x14]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [ebp - 0x14]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call ebx
mov eax, dword [ebp + 0x14]
add esp, 0x20
cmp eax, dword [ebp - 8]
je 0x57205d
mov ecx, dword [ebp - 0xc]
mov dword [ecx], eax
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 8]
lea eax, [ebp + 0x14]
push eax
mov eax, dword [edi + 0x3c]
push edi
call eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp + 0x14]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [ebp - 0x14]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call ebx
mov eax, dword [ebp + 0x14]
add esp, 0x20
cmp eax, dword [ebp - 8]
jne 0x5726f2
jmp 0x57205d
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x14]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call ebx
jmp 0x57205a
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.00576780
add esp, 0x10
test eax, eax
je 0x5727c3
jmp 0x572060
push dword [ebp - 8]
push dword [ebp + 0x14]
push edi
push esi
call fcn.00576630
add esp, 0x10
test eax, eax
je 0x5727c3
jmp 0x572060
pop edi
pop esi
mov eax, 0x15
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xf
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xc
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x18
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xb
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x14]
push ebx
call eax
add esp, 4
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
pop edi
pop esi
mov dword [ecx], eax
mov eax, 7
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xe
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 0x20], 0
je 0x572806
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x14]
pop edi
pop esi
mov dword [ecx], eax
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x18]
mov dword [edx], ecx
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x572826
push 1
lea ecx, [ebp + 0x13]
mov byte [ebp + 0x13], 0xa
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x57283a
cmp dword [esi + 0x50], 0
je 0x57283d
push ecx
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x572950
cmp dword [esi + 0x138], eax
jne 0x57287b
mov eax, dword [ebp + 0x1c]
pop edi
pop esi
pop ebx
mov dword [eax], ecx
xor eax, eax
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 0x20], 0
jne 0x5727f5
mov eax, dword [ebp + 0xc]
test eax, eax
jle 0x572950
cmp dword [esi + 0x138], eax
je 0x5727f5
pop edi
pop esi
mov eax, 0xd
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 8]
pop edi
mov dword [ebx], eax
mov eax, 4
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 0x20], 0
jne 0x5727f5
pop edi
pop esi
mov eax, 5
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 0x20], 0
jne 0x5727f5
pop edi
pop esi
mov eax, 6
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 0x20], 0
jne 0x5727f5
mov edx, dword [esi + 0x3c]
test edx, edx
je 0x57292e
cmp byte [edi + 0x48], 0
jne 0x572918
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [ebp + 0x10], eax
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x18]
lea eax, [ebp + 0x14]
push eax
mov eax, dword [edi + 0x3c]
push edi
call eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [ebp + 0x10]
sub eax, ecx
push eax
mov eax, dword [esi + 0x3c]
push ecx
push dword [esi + 4]
call eax
add esp, 0x20
jmp 0x572944
mov edi, dword [ebp + 0x18]
mov eax, edi
mov ecx, dword [ebp + 0x14]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call edx
add esp, 0xc
jmp 0x572947
cmp dword [esi + 0x50], 0
je 0x572944
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push edi
push esi
call fcn.005766e0
add esp, 0x10
mov edi, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x57295c
mov dword [ebx], edi
pop edi
pop esi
mov eax, 3
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0x138], eax
je 0x572972
mov dword [ebx], edi
mov eax, 0xd
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x1c]
mov dword [eax], edi
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebp - 8]
pop edi
pop esi
mov dword [ecx], eax
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x23
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret