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

Disassembly:
mov ecx, dword [0x5efcb0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x48fc54
sub esp, 0x7c
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
test edx, edx
sete dl
test ebx, ebx
sete bl
and ebx, edx
test bl, bl
jne 0x48ef98
jmp 0x48efa5
mov dword [esp + 0x9c], 0
jmp 0x48efa7
jmp 0x48efa7
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0xa0]
test byte [ebp], al
mov ebp, dword [ebp]
lea ecx, [ebp - 0x3c]
neg ecx
mov ebp, edx
shl edx, cl
shl ebx, cl
mov dword [esp + 0x58], ebx
lea esi, [ecx - 0x20]
mov eax, ecx
mov ecx, esi
mov edi, ebp
shl ebp, cl
lea ebx, [eax - 0x20]
neg ebx
mov ecx, ebx
shr edi, cl
mov dword [esp + 0x54], edi
cmp eax, 0x20
sbb edi, edi
and edx, edi
mov dword [esp + 0x94], edx
cmp esi, 0x20
sbb edx, edx
and ebp, edx
cmp eax, 0x20
sbb edx, edx
mov esi, dword [esp + 0x58]
and esi, edx
cmp ecx, 0x20
sbb edx, edx
mov ebx, dword [esp + 0x54]
and ebx, edx
or esi, ebx
or esi, ebp
mov dword [esp + 0x98], esi
jmp 0x48f021
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
test ebx, ebx
setne bl
test edx, edx
setne dl
or ebx, edx
mov byte [esp + 0x2f], bl
test bl, bl
jne 0x48f045
jmp 0x48f05e
mov edx, dword [esp + 0x98]
test edx, 0x10000000
sete dl
and edx, 1
mov byte [esp + 0x2f], dl
jmp 0x48f060
jmp 0x48f060
movzx edx, byte [esp + 0x2f]
test dl, dl
jne 0x48f06b
jmp 0x48f09d
mov edx, dword [esp + 0x94]
mov ebx, edx
shl edx, 1
shr ebx, 0x1f
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x94], edx
shl ebp, 1
or ebp, ebx
mov dword [esp + 0x98], ebp
dec dword [esp + 0x9c]
jmp 0x48f09b
jmp 0x48f021
mov edx, dword [esp + 0x8c]
test edx, edx
setge dl
mov byte [esp + 0x2f], dl
jge 0x48f0b1
jmp 0x48f0c2
cmp dword [esp + 0x8c], 0xf
setl dl
mov byte [esp + 0x2f], dl
jmp 0x48f0c4
jmp 0x48f0c4
movzx edx, byte [esp + 0x2f]
test dl, dl
jne 0x48f0d2
jmp 0x48f2be
mov ecx, dword [esp + 0x8c]
shl ecx, 2
mov dword [esp + 0x30], ecx
lea edx, [ecx - 0x20]
lea ebx, [ecx - 0x20]
neg ebx
mov ebp, dword [esp + 0x94]
mov esi, ebp
shl ebp, cl
mov eax, ecx
mov ecx, edx
mov edi, esi
shl esi, cl
mov ecx, ebx
shr edi, cl
mov dword [esp + 0x58], edi
mov edi, dword [esp + 0x98]
mov ecx, eax
shl edi, cl
mov dword [esp + 0x54], edi
cmp eax, 0x20
sbb edi, edi
and ebp, edi
mov dword [esp + 0x50], ebp
mov dword [esp + 0x38], ebp
cmp edx, 0x20
sbb edx, edx
and esi, edx
cmp ebx, 0x20
sbb edx, edx
mov ebx, dword [esp + 0x58]
and ebx, edx
cmp eax, 0x20
sbb edx, edx
mov edi, dword [esp + 0x54]
and edi, edx
or edi, ebx
or edi, esi
and edi, 0xfffffff
mov dword [esp + 0x58], edi
mov dword [esp + 0x3c], edi
mov edx, dword [esp + 0x98]
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0x94]
mov esi, dword [esp + 0x30]
lea ecx, [esi - 0x3c]
neg ecx
mov dword [esp + 0x4c], ecx
shr ebx, cl
mov esi, edx
shr edx, cl
lea eax, [ecx - 0x20]
mov ecx, eax
shr esi, cl
mov dword [esp + 0x48], esi
mov edi, dword [esp + 0x4c]
lea ebp, [edi - 0x20]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov ecx, ebp
mov esi, dword [esp + 0x54]
shl esi, cl
mov dword [esp + 0x54], esi
cmp edi, 0x20
sbb esi, esi
and ebx, esi
cmp edi, 0x20
sbb esi, esi
and edx, esi
cmp eax, 0x20
sbb esi, esi
mov edi, dword [esp + 0x48]
and edi, esi
cmp ecx, 0x20
sbb ebp, ebp
mov esi, dword [esp + 0x54]
and esi, ebp
or ebx, esi
or ebx, edi
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], edx
mov ebp, ebx
and ebx, 1
mov esi, dword [esp + 0x50]
or esi, ebx
test esi, esi
seta bl
mov esi, dword [esp + 0x58]
cmp esi, 0x8000000
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebx
cmp esi, 0x8000000
seta bl
or ebx, edi
test bl, bl
jne 0x48f203
jmp 0x48f219
add ebp, 1
mov dword [esp + 0x94], ebp
adc edx, 0
mov dword [esp + 0x98], edx
jmp 0x48f21b
jmp 0x48f21b
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0x30]
lea ecx, [ebp - 0x3c]
neg ecx
shl ebx, cl
mov ebp, edx
shl edx, cl
lea esi, [ecx - 0x20]
mov eax, ecx
mov ecx, esi
mov edi, ebp
shl ebp, cl
mov dword [esp + 0x58], ebp
lea ebp, [eax - 0x20]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov ecx, ebp
shr edi, cl
mov dword [esp + 0x54], edi
cmp eax, 0x20
sbb edi, edi
and ebx, edi
cmp eax, 0x20
sbb edi, edi
and edx, edi
mov dword [esp + 0x94], edx
cmp esi, 0x20
sbb esi, esi
mov edi, dword [esp + 0x58]
and edi, esi
cmp ecx, 0x20
sbb ebp, ebp
mov esi, dword [esp + 0x54]
and esi, ebp
or ebx, esi
or ebx, edi
mov dword [esp + 0x98], ebx
test ebx, 0x20000000
jne 0x48f298
jmp 0x48f2ba
mov ebp, ebx
shr ebx, 1
shr edx, 1
shl ebp, 0x1f
or edx, ebp
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], ebx
inc dword [esp + 0x9c]
jmp 0x48f2bc
jmp 0x48f2bc
jmp 0x48f2c0
jmp 0x48f2c0
lea edx, [0x528eab]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], 0x10
cmp byte [esp + 0x90], 0x58
je 0x48f2de
jmp 0x48f2f2
lea edx, [0x528edb]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], 0x10
jmp 0x48f2f4
jmp 0x48f2f4
movzx edx, byte [esp + 0x91]
test dl, dl
jne 0x48f302
jmp 0x48f36e
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
inc ebp
cmp edx, ebp
jae 0x48f31e
jmp 0x48f320
jmp 0x48f350
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48f350
lea esi, [ebp + ebx - 1]
mov byte [esi], 0x2d
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
jmp 0x48f370
jmp 0x48f370
mov edx, dword [esp + 0x98]
shr edx, 0x1c
and edx, 1
add edx, 0x30
mov byte [esp + 0x2d], dl
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
add ebp, 3
cmp edx, ebp
jae 0x48f3a2
jmp 0x48f3a4
jmp 0x48f3d4
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 3
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48f3d4
mov dword [esp + 0x44], edx
lea esi, [ebp + ebx - 3]
lea edi, [ebp + ebx - 2]
lea eax, [ebp + ebx - 1]
movzx ecx, byte [esp + 0x90]
movzx edx, byte [esp + 0x2d]
mov byte [esi], 0x30
mov byte [edi], cl
mov byte [eax], dl
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov edx, dword [esp + 0x44]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x94]
mov ebx, edx
shl edx, 4
shr ebx, 0x1c
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x94], edx
shl ebp, 4
or ebp, ebx
mov dword [esp + 0x98], ebp
mov edx, dword [esp + 0x8c]
test edx, edx
setl dl
mov byte [esp + 0x2f], dl
jl 0x48f44e
jmp 0x48f46e
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
test edx, edx
setne dl
test ebx, ebx
setne bl
or ebx, edx
mov byte [esp + 0x2f], bl
jmp 0x48f470
jmp 0x48f470
movzx edx, byte [esp + 0x2f]
test dl, dl
jne 0x48f47b
jmp 0x48f4ea
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
inc ebp
cmp edx, ebp
jae 0x48f497
jmp 0x48f499
jmp 0x48f4c9
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48f4c9
lea esi, [ebp + ebx - 1]
mov byte [esi], 0x2e
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
jmp 0x48fb51
mov edx, dword [esp + 0x8c]
test edx, edx
jg 0x48f4f7
jmp 0x48f56e
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
inc ebp
cmp edx, ebp
jae 0x48f513
jmp 0x48f515
jmp 0x48f545
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48f545
lea esi, [ebp + ebx - 1]
mov byte [esi], 0x2e
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
mov dword [esp + 0x34], 0
jmp 0x48fa5c
jmp 0x48f570
jmp 0x48f572
mov byte [esp + 0x21], 0x50
movzx eax, byte [esp + 0x90]
mov byte [esp], al
call fcn.0048b6d0
movzx eax, byte [esp + 4]
mov byte [esp + 0x2e], al
cmp byte [esp + 0x90], al
je 0x48f59b
jmp 0x48f5a2
mov byte [esp + 0x21], 0x70
jmp 0x48f5a4
jmp 0x48f5a4
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
inc ebx
cmp ecx, ebx
jae 0x48f5c0
jmp 0x48f5c2
jmp 0x48f5f2
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x48f5f2
lea ebp, [ebx + edx - 1]
movzx esi, byte [esp + 0x21]
xchg esi, eax
mov byte [ebp], al
xchg esi, eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x9c]
test ecx, ecx
jl 0x48f622
jmp 0x48f639
mov byte [esp + 0x21], 0x2d
mov ecx, dword [esp + 0x9c]
neg ecx
mov dword [esp + 0x9c], ecx
jmp 0x48f640
mov byte [esp + 0x21], 0x2b
jmp 0x48f640
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
inc ebx
cmp ecx, ebx
jae 0x48f65c
jmp 0x48f65e
jmp 0x48f68e
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x48f68e
lea ebp, [ebx + edx - 1]
movzx esi, byte [esp + 0x21]
xchg esi, eax
mov byte [ebp], al
xchg esi, eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ecx
cmp dword [esp + 0x9c], 0x64
jl 0x48f6c0
jmp 0x48f790
jmp 0x48f6c2
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + 0x30]
mov byte [esp + 0x2a], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + edx*4]
shl ecx, 1
sub ebx, ecx
lea ecx, [ebx + 0x30]
mov byte [esp + 0x29], cl
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
add ebx, 2
cmp ecx, ebx
jae 0x48f727
jmp 0x48f729
jmp 0x48f759
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 2
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x48f759
lea eax, [ebx + edx - 2]
lea ebp, [ebx + edx - 1]
movzx esi, byte [esp + 0x2a]
movzx edi, byte [esp + 0x29]
xchg esi, ebx
mov byte [eax], bl
xchg esi, ebx
xchg edi, eax
mov byte [ebp], al
xchg edi, eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ecx
jmp 0x48fa2e
cmp dword [esp + 0x9c], 0x3e8
jl 0x48f7a2
jmp 0x48f8c4
jmp 0x48f7a4
mov ecx, dword [esp + 0x9c]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + 0x30]
mov byte [esp + 0x28], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
sar ecx, 0x1f
sub edx, ecx
mov eax, 0xcccccccd
mov ecx, edx
imul edx
add edx, ecx
sar edx, 3
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + edx*4]
shl ecx, 1
sub ebx, ecx
lea ecx, [ebx + 0x30]
mov byte [esp + 0x27], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + edx*4]
shl ecx, 1
sub ebx, ecx
lea ecx, [ebx + 0x30]
mov byte [esp + 0x26], cl
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
add ebx, 3
cmp ecx, ebx
jae 0x48f842
jmp 0x48f844
jmp 0x48f874
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 3
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x48f874
mov dword [esp + 0x44], ebx
mov dword [esp + 0x40], ecx
lea eax, [ebx + edx - 3]
lea ebp, [ebx + edx - 2]
lea esi, [ebx + edx - 1]
movzx edi, byte [esp + 0x28]
movzx ecx, byte [esp + 0x27]
movzx ebx, byte [esp + 0x26]
xchg edi, ebx
mov byte [eax], bl
xchg edi, ebx
mov byte [ebp], cl
mov byte [esi], bl
mov dword [esp + 0x80], edx
mov eax, dword [esp + 0x44]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x88], eax
jmp 0x48fa2e
jmp 0x48f8c6
mov ecx, dword [esp + 0x9c]
mov eax, 0x4189374c
imul ecx
sar edx, 8
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + 0x30]
mov byte [esp + 0x25], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
sar ecx, 0x1f
sub edx, ecx
movzx ecx, dl
imul ecx, ecx, 0x19a
shr ecx, 0xc
lea ecx, [ecx + ecx*4]
shl ecx, 1
sub edx, ecx
lea ecx, [edx + 0x30]
mov byte [esp + 0x24], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
sar ecx, 0x1f
sub edx, ecx
mov eax, 0xcccccccd
mov ecx, edx
imul edx
add edx, ecx
sar edx, 3
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + edx*4]
shl ecx, 1
sub ebx, ecx
lea ecx, [ebx + 0x30]
mov byte [esp + 0x23], cl
mov ecx, dword [esp + 0x9c]
mov eax, 0xcccccccd
imul ecx
add edx, ecx
sar edx, 3
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edx + edx*4]
shl ecx, 1
sub ebx, ecx
lea ecx, [ebx + 0x30]
mov byte [esp + 0x22], cl
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
add ebx, 4
cmp ecx, ebx
jae 0x48f994
jmp 0x48f996
jmp 0x48f9c6
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x48f9c6
mov dword [esp + 0x78], edx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x40], ecx
lea eax, [ebx + edx - 4]
lea ebp, [ebx + edx - 3]
lea esi, [ebx + edx - 2]
lea edi, [ebx + edx - 1]
mov dword [esp + 0x74], edi
movzx ecx, byte [esp + 0x25]
movzx ebx, byte [esp + 0x24]
movzx edx, byte [esp + 0x23]
movzx edi, byte [esp + 0x22]
mov byte [eax], cl
mov byte [ebp], bl
mov byte [esi], dl
mov eax, dword [esp + 0x74]
xchg edi, ebx
mov byte [eax], bl
xchg edi, ebx
mov eax, dword [esp + 0x78]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x88], eax
jmp 0x48fa2e
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x88]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edx
add esp, 0x7c
ret
mov edx, dword [esp + 0x34]
cmp dword [esp + 0x8c], edx
jg 0x48fa6e
jmp 0x48fb47
mov eax, dword [esp + 0x98]
shr eax, 0x1c
and eax, 0xf
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 0
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
jmp 0x48fa91
cmp ecx, eax
ja 0x48fa9a
jmp 0x48fb4c
add edx, eax
movzx edx, byte [edx]
mov byte [esp + 0x2b], dl
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
inc ebp
cmp edx, ebp
jae 0x48fabf
jmp 0x48fac1
jmp 0x48faf1
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48faf1
lea esi, [ebp + ebx - 1]
movzx edi, byte [esp + 0x2b]
xchg edi, eax
mov byte [esi], al
xchg edi, eax
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x94]
mov ebx, edx
shl edx, 4
shr ebx, 0x1c
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x94], edx
shl ebp, 4
or ebp, ebx
mov dword [esp + 0x98], ebp
jmp 0x48fb3e
inc dword [esp + 0x34]
jmp 0x48fa5c
jmp 0x48f570
call fcn.00475840
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
test edx, edx
setne dl
test ebx, ebx
setne bl
or ebx, edx
test bl, bl
jne 0x48fb74
jmp 0x48fc49
mov eax, dword [esp + 0x98]
shr eax, 0x1c
and eax, 0xf
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 0
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
jmp 0x48fb97
cmp ecx, eax
ja 0x48fba0
jmp 0x48fc4e
add edx, eax
movzx edx, byte [edx]
mov byte [esp + 0x2c], dl
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
inc ebp
cmp edx, ebp
jae 0x48fbc5
jmp 0x48fbc7
jmp 0x48fbf7
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x511660]
mov dword [esp + 0x10], eax
call fcn.00471230
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x48fbf7
lea esi, [ebp + ebx - 1]
movzx edi, byte [esp + 0x2c]
xchg edi, eax
mov byte [esi], al
xchg edi, eax
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x94]
mov ebx, edx
shl edx, 4
shr ebx, 0x1c
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x94], edx
shl ebp, 4
or ebp, ebx
mov dword [esp + 0x98], ebp
jmp 0x48fc44
jmp 0x48fb51
jmp 0x48f572
call fcn.00475840
nop
call fcn.004743b0
jmp fcn.0048ef40