Function at 0x4761da
Capabilities:
Parse credit card information

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x1c
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x4761e2
push dword [esp + 0x80]
pop eax
mov dword [esp], eax
mov ebx, dword [esp + 0x80]
add ebx, dword [esp + 0x84]
mov dword [esp + 4], ebx
push dword [esp + 0x80]
pop eax
mov dword [esp + 8], eax
cmp dword [esp + 0x90], 0
je 0x476232
cmp dword [0x46c6c4], 0
je 0x476232
mov eax, 1
jmp 0x476234
xor eax, eax
and eax, eax
je 0x47624b
mov ebp, dword [0x46c6c4]
cmp dword [ebp], 0
je 0x47624b
mov eax, 1
jmp 0x47624d
xor eax, eax
and eax, eax
je 0x47625b
mov dword [esp + 0xc], 1
jmp 0x476263
mov dword [esp + 0xc], 0
cmp dword [esp + 0x90], 0
je 0x47627d
cmp dword [0x46c6c4], 0
je 0x47627d
mov eax, 1
jmp 0x47627f
xor eax, eax
and eax, eax
je 0x476298
mov ebp, dword [0x46c6c4]
mov ebx, dword [ebp + 8]
cmp ebx, 1
jne 0x476298
mov eax, 1
jmp 0x47629a
xor eax, eax
and eax, eax
je 0x4762aa
mov dword [0x46c804], 2
jmp 0x4762b4
mov dword [0x46c804], 0x18
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x4789fb
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x476318
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x20
je 0x476304
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x476304
jmp 0x47630b
mov eax, 1
jmp 0x47630d
xor eax, eax
and eax, eax
je 0x476318
mov eax, 1
jmp 0x47631a
xor eax, eax
and eax, eax
je 0x476327
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x4762e1
push dword [esp]
pop eax
mov dword [esp + 0x20], eax
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x476353
mov ebp, dword [esp]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x476353
mov eax, 1
jmp 0x476355
xor eax, eax
and eax, eax
je 0x476362
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x47632f
push dword [esp]
pop eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 0
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x4763a9
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x20
je 0x476395
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x476395
jmp 0x47639c
mov eax, 1
jmp 0x47639e
xor eax, eax
and eax, eax
je 0x4763a9
mov eax, 1
jmp 0x4763ab
xor eax, eax
and eax, eax
je 0x4763c1
mov ebx, dword [esp + 0x28]
inc ebx
mov dword [esp + 0x28], ebx
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x476372
mov ebx, dword [esp + 0x28]
and ebx, ebx
jne 0x4763d9
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x4763d9
mov eax, 1
jmp 0x4763db
xor eax, eax
and eax, eax
je 0x4763f2
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x24
jne 0x4763f2
mov eax, 1
jmp 0x4763f4
xor eax, eax
and eax, eax
je 0x476409
mov ebx, dword [esp + 0x20]
cmp ebx, dword [esp + 0x24]
jge 0x476409
mov eax, 1
jmp 0x47640b
xor eax, eax
and eax, eax
je 0x47646e
mov ebx, dword [esp + 0x24]
inc ebx
mov dword [esp + 0x24], ebx
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x476456
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x20
je 0x476442
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x476442
jmp 0x476449
mov eax, 1
jmp 0x47644b
xor eax, eax
and eax, eax
je 0x476456
mov eax, 1
jmp 0x476458
xor eax, eax
and eax, eax
je 0x47646e
mov ebx, dword [esp + 0x28]
inc ebx
mov dword [esp + 0x28], ebx
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x47641f
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x20]
mov dword [esp + 0x2c], ebx
push dword [0x46e33c]
push dword [0x46e33c]
push 0x18
push dword [esp + 0x38]
push dword [esp + 0x30]
call fcn.00416e60
lea eax, [esp + 0x34]
push eax
call fcn.004171c0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jle 0x4764c8
mov dword [esp + 0x3c], 0xffffffff
jmp 0x4765a8
mov dword [esp + 0x40], 0
mov ebp, dword [esp]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x4764f1
mov dword [esp + 0x3c], 0
jmp 0x4765a8
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x47650b
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x47650b
jmp 0x476512
mov eax, 1
jmp 0x476514
xor eax, eax
and eax, eax
je 0x476586
mov dword [esp + 0x40], 1
mov ebx, dword [esp]
inc ebx
cmp ebx, dword [esp + 4]
jge 0x476564
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x476550
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x476550
jmp 0x476557
mov eax, 1
jmp 0x476559
xor eax, eax
and eax, eax
je 0x476564
mov eax, 1
jmp 0x476566
xor eax, eax
and eax, eax
je 0x476575
mov ebx, dword [esp]
add ebx, 2
mov dword [esp], ebx
jmp 0x47657c
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4765a8
mov ebp, dword [esp]
movsx ebx, byte [ebp]
and ebx, ebx
jne 0x47659b
mov dword [esp + 0x3c], 0xffffffff
jmp 0x4765a8
mov ebp, dword [esp]
movzx eax, byte [ebp]
push eax
pop eax
mov dword [esp + 0x3c], eax
push dword [esp + 0x30]
call fcn.004791a3
and eax, eax
je 0x4765c5
mov ebx, dword [esp + 0x14]
cmp ebx, 0x5c
je 0x4765c5
mov eax, 1
jmp 0x4765c7
xor eax, eax
and eax, eax
je 0x476707
cmp dword [0x46c7c0], 0
je 0x476634
mov ebx, dword [esp + 0x88]
and ebx, ebx
je 0x4765fb
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x20]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jl 0x4765fb
jmp 0x476602
mov eax, 1
jmp 0x476604
xor eax, eax
and eax, eax
jne 0x476620
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x24]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jg 0x476620
jmp 0x476627
mov eax, 1
jmp 0x476629
xor eax, eax
and eax, eax
je 0x476634
mov eax, 1
jmp 0x476636
xor eax, eax
and eax, eax
je 0x476661
push dword [0x46c784]
call fcn.00413aa0
push eax
push dword [esp + 0x24]
push dword [0x46c784]
call fcn.00487c5f
push eax
call fcn.0048d9a7
mov dword [esp + 0x44], eax
jmp 0x476669
mov dword [esp + 0x44], 0
cmp dword [0x46c864], 0
je 0x4766df
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0x2c]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push dword [esp + 0x44]
push 1
push dword [0x46c7e4]
mov ebx, dword [esp + 0x30]
sub ebx, dword [esp + 0x2c]
push ebx
push dword [esp + 0x30]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x30]
push ebx
push dword [esp + 0x34]
call dword [esp + 0xa0]
jmp 0x476702
push dword [esp + 0x44]
push 0
push dword [0x46c7e4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
push dword [esp + 0x20]
push dword [esp + 0xc]
push dword [esp + 0x38]
call fcn.0047539b
and eax, eax
je 0x47672c
mov ebx, dword [esp + 0x14]
cmp ebx, 0x5c
je 0x47672c
mov eax, 1
jmp 0x47672e
xor eax, eax
and eax, eax
je 0x476781
mov ebx, dword [esp + 0xc]
and ebx, ebx
je 0x47674b
push dword [esp + 0x30]
call fcn.0048ab7e
mov ebx, eax
and ebx, ebx
je 0x47674b
jmp 0x476752
mov eax, 1
jmp 0x476754
xor eax, eax
and eax, eax
jne 0x47676d
push dword [esp + 0x20]
push dword [esp + 0xc]
call fcn.00474e40
mov ebx, eax
and ebx, ebx
je 0x47676d
jmp 0x476774
mov eax, 1
jmp 0x476776
xor eax, eax
and eax, eax
je 0x476781
mov eax, 1
jmp 0x476783
xor eax, eax
and eax, eax
je 0x4768c3
cmp dword [0x46c7c0], 0
je 0x4767f0
mov ebx, dword [esp + 0x88]
and ebx, ebx
je 0x4767b7
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x20]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jl 0x4767b7
jmp 0x4767be
mov eax, 1
jmp 0x4767c0
xor eax, eax
and eax, eax
jne 0x4767dc
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x24]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jg 0x4767dc
jmp 0x4767e3
mov eax, 1
jmp 0x4767e5
xor eax, eax
and eax, eax
je 0x4767f0
mov eax, 1
jmp 0x4767f2
xor eax, eax
and eax, eax
je 0x47681d
push dword [0x46c818]
call fcn.00413aa0
push eax
push dword [esp + 0x24]
push dword [0x46c818]
call fcn.00487c5f
push eax
call fcn.0048d9a7
mov dword [esp + 0x44], eax
jmp 0x476825
mov dword [esp + 0x44], 0
cmp dword [0x46c864], 0
je 0x47689b
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0x2c]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push dword [esp + 0x44]
push 1
push dword [0x46c8a8]
mov ebx, dword [esp + 0x30]
sub ebx, dword [esp + 0x2c]
push ebx
push dword [esp + 0x30]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x30]
push ebx
push dword [esp + 0x34]
call dword [esp + 0xa0]
jmp 0x4768be
push dword [esp + 0x44]
push 0
push dword [0x46c8a8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3a
jne 0x4768e5
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0x3a
cmp ebx, eax
jne 0x4768e5
mov eax, 1
jmp 0x4768e7
xor eax, eax
and eax, eax
je 0x47694d
push 0
push 0
push dword [0x46c7b4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c850]
push 2
push dword [esp + 0x10]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
mov dword [esp + 0x34], 1
mov ebx, dword [esp]
add ebx, 2
mov dword [esp], ebx
jmp 0x477644
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3a
jne 0x47696e
push dword [esp + 0x20]
push dword [esp + 0xc]
call fcn.0047e902
and eax, eax
je 0x47696e
mov eax, 1
jmp 0x476970
xor eax, eax
and eax, eax
je 0x476983
mov ebx, dword [esp + 0x2c]
and ebx, ebx
jle 0x476983
mov eax, 1
jmp 0x476985
xor eax, eax
and eax, eax
je 0x4769bb
push 0
push 0
push dword [0x46c6c8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
inc ebx
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x34], 1
jmp 0x477644
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x28
jne 0x4769d3
mov ebx, dword [esp + 0x2c]
and ebx, ebx
jle 0x4769d3
mov eax, 1
jmp 0x4769d5
xor eax, eax
and eax, eax
je 0x476bcd
mov dword [esp + 0x44], 0
push dword [esp + 0x2c]
push dword [esp + 0x24]
call fcn.0047a057
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0x48]
cmp ebx, 0xffffffff
jle 0x476a35
cmp dword [0x46c7c0], 0
je 0x476a30
mov ebx, dword [esp + 0x2c]
dec ebx
push ebx
push dword [esp + 0x24]
mov ebx, dword [esp + 0x50]
mov ebp, dword [0x46cc90]
imul ebx, ebx, 0x10c
add ebp, ebx
push dword [ebp + 8]
call fcn.0048d9a7
mov dword [esp + 0x44], eax
jmp 0x476ab6
push dword [0x46e33c]
push dword [0x46e33c]
push dword [0x46e33c]
push dword [esp + 0x3c]
call fcn.00414640
mov edx, dword [0x46bd3c]
add dword [esp], edx
call fcn.0047f2d2
pop dword [0x46e33c]
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0x48]
cmp ebx, 0xffffffff
jle 0x476ab6
cmp dword [0x46c7c0], 0
je 0x476a8a
mov ebx, dword [esp + 0x14]
cmp ebx, 0x2e
je 0x476a8a
mov eax, 1
jmp 0x476a8c
xor eax, eax
and eax, eax
je 0x476ab6
push dword [esp + 0x2c]
push dword [esp + 0x24]
mov ebx, dword [esp + 0x50]
mov ebp, dword [0x46cc88]
imul ebx, ebx, 0x10c
add ebp, ebx
push dword [ebp + 8]
call fcn.0048d9a7
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x14]
cmp ebx, 0x2e
jne 0x476b61
push dword [0x46e33c]
push dword [0x46e33c]
push dword [esp + 0x38]
call fcn.00414640
lea eax, [esp + 0x34]
push eax
call fcn.004171c0
push dword [esp + 0x30]
call fcn.00413aa0
mov ebx, eax
cmp ebx, 1
jne 0x476b11
push 1
push dword [esp + 0x34]
mov eax, str.ABCUWLSFDQI
push eax
call fcn.004138a0
and eax, eax
je 0x476b11
mov eax, 1
jmp 0x476b13
xor eax, eax
and eax, eax
je 0x476b3c
push dword [esp + 0x44]
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x476b5f
push dword [esp + 0x44]
push 0
push dword [0x46c840]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x476bc8
mov ebx, dword [esp + 0x14]
cmp ebx, 0xfffffffe
jne 0x476b7a
mov ebx, dword [esp + 0x18]
cmp ebx, 0x2e
jne 0x476b7a
mov eax, 1
jmp 0x476b7c
xor eax, eax
and eax, eax
je 0x476ba5
push dword [esp + 0x44]
push 0
push dword [0x46c840]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x476bc8
push dword [esp + 0x44]
push 0
push dword [0x46c6b0]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
push dword [esp + 0x2c]
push dword [esp + 0x24]
call fcn.0048b32e
and eax, eax
jne 0x476c2e
mov ebx, dword [esp + 0x14]
cmp ebx, 0x2e
jne 0x476c04
push dword [esp + 0x20]
call fcn.00416de0
push eax
call fcn.0047f3b3
mov ebx, eax
cmp ebx, 0x45
jne 0x476c04
mov eax, 1
jmp 0x476c06
xor eax, eax
and eax, eax
je 0x476c26
mov ebx, dword [esp + 0x2c]
dec ebx
push ebx
mov ebx, dword [esp + 0x24]
inc ebx
push ebx
call fcn.0048b32e
and eax, eax
je 0x476c26
mov eax, 1
jmp 0x476c28
xor eax, eax
and eax, eax
jne 0x476c2e
jmp 0x476c35
mov eax, 1
jmp 0x476c37
xor eax, eax
and eax, eax
je 0x476c9c
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2e
jne 0x476c73
push 0
push 0
push dword [0x46c6d4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
inc ebx
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x34], 1
jmp 0x476c97
push 0
push 0
push dword [0x46c6d4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
cmp dword [esp + 0xc], 0
je 0x476cb7
push dword [esp + 0x30]
call fcn.0048ab7e
and eax, eax
je 0x476cb7
mov eax, 1
jmp 0x476cb9
xor eax, eax
and eax, eax
je 0x476d97
cmp dword [0x46c7c0], 0
je 0x476d26
mov ebx, dword [esp + 0x88]
and ebx, ebx
je 0x476ced
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x20]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jl 0x476ced
jmp 0x476cf4
mov eax, 1
jmp 0x476cf6
xor eax, eax
and eax, eax
jne 0x476d12
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x24]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jg 0x476d12
jmp 0x476d19
mov eax, 1
jmp 0x476d1b
xor eax, eax
and eax, eax
je 0x476d26
mov eax, 1
jmp 0x476d28
xor eax, eax
and eax, eax
je 0x476d6e
push dword [esp + 0x2c]
push dword [esp + 0x24]
push dword [0x46c714]
call fcn.00487c5f
push eax
call fcn.0048d9a7
mov dword [esp + 0x44], eax
push dword [esp + 0x44]
push 0
push dword [0x46c7cc]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x476d92
push 0
push 0
push dword [0x46c7cc]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
mov ebx, dword [esp + 0x14]
cmp ebx, 0x5c
je 0x476dab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x5c
je 0x476dab
jmp 0x476db2
mov eax, 1
jmp 0x476db4
xor eax, eax
and eax, eax
je 0x476de1
push 0
push 0
push dword [0x46c840]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2e
je 0x476df5
mov ebx, dword [esp + 0x14]
cmp ebx, 0x2e
je 0x476df5
jmp 0x476dfc
mov eax, 1
jmp 0x476dfe
xor eax, eax
and eax, eax
jne 0x476e23
mov ebx, dword [esp + 0x14]
cmp ebx, 0xfffffffe
jne 0x476e1b
mov ebx, dword [esp + 0x18]
cmp ebx, 0x2e
jne 0x476e1b
mov eax, 1
jmp 0x476e1d
xor eax, eax
and eax, eax
jne 0x476e23
jmp 0x476e2a
mov eax, 1
jmp 0x476e2c
xor eax, eax
and eax, eax
je 0x477615
mov ebx, dword [esp + 0x14]
cmp ebx, 0x2e
jne 0x476ee4
push dword [0x46e33c]
push dword [0x46e33c]
push dword [esp + 0x38]
call fcn.00414640
lea eax, [esp + 0x34]
push eax
call fcn.004171c0
push dword [esp + 0x30]
call fcn.00413aa0
mov ebx, eax
cmp ebx, 1
jne 0x476e8f
push 1
push dword [esp + 0x34]
mov eax, str.ABCUWLSFDQI
push eax
call fcn.004138a0
and eax, eax
je 0x476e8f
mov eax, 1
jmp 0x476e91
xor eax, eax
and eax, eax
je 0x476ebb
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x476edf
push 0
push 0
push dword [0x46c840]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477613
mov ebx, dword [esp]
inc ebx
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 0x4c]
cmp ebx, dword [esp + 4]
jge 0x476f12
mov ebp, dword [esp + 0x4c]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x476f12
mov eax, 1
jmp 0x476f14
xor eax, eax
and eax, eax
je 0x476f23
mov ebx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x4c], ebx
jmp 0x476eec
push dword [0x46e33c]
push dword [0x46e33c]
push dword [0x46e33c]
push dword [0x46e33c]
push 0x18
mov ebx, dword [esp + 0x60]
sub ebx, dword [esp + 0x14]
dec ebx
push ebx
mov ebx, dword [esp + 0x18]
inc ebx
push ebx
call fcn.00416e60
mov edx, dword [0x46bd3c]
add dword [esp], edx
call fcn.00414640
lea eax, [esp + 0x54]
push eax
call fcn.004171c0
mov ebx, dword [esp + 0x4c]
cmp ebx, dword [esp + 4]
jge 0x476f8b
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 0x20
jne 0x476f8b
mov eax, 1
jmp 0x476f8d
xor eax, eax
and eax, eax
jne 0x476fa0
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x476fa0
jmp 0x476fa7
mov eax, 1
jmp 0x476fa9
xor eax, eax
and eax, eax
je 0x476fb8
mov ebx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x4c], ebx
jmp 0x476f6d
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 4]
add edi, 0xfffffffe
cmp ebx, edi
jge 0x476fdb
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 0x3a
jne 0x476fdb
mov eax, 1
jmp 0x476fdd
xor eax, eax
and eax, eax
je 0x476ffa
mov ebx, dword [esp + 0x4c]
inc ebx
push ebx
call fcn.00416de0
mov ebx, eax
cmp ebx, 0x3a
jne 0x476ffa
mov eax, 1
jmp 0x476ffc
xor eax, eax
and eax, eax
je 0x4770e6
mov dword [esp + 0x54], 1
mov ebx, dword [esp + 0x4c]
add ebx, 2
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 0x4c]
cmp ebx, dword [esp + 4]
jge 0x477035
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 0x20
jne 0x477035
mov eax, 1
jmp 0x477037
xor eax, eax
and eax, eax
jne 0x47704a
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x47704a
jmp 0x477051
mov eax, 1
jmp 0x477053
xor eax, eax
and eax, eax
je 0x477062
mov ebx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x4c], ebx
jmp 0x477017
mov ebx, dword [esp + 0x4c]
cmp ebx, dword [esp + 4]
jge 0x477088
mov ebp, dword [esp + 0x4c]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x477088
mov eax, 1
jmp 0x47708a
xor eax, eax
and eax, eax
je 0x477099
mov ebx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x4c], ebx
jmp 0x477062
mov ebx, dword [esp + 0x4c]
cmp ebx, dword [esp + 4]
jge 0x4770b7
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 0x20
jne 0x4770b7
mov eax, 1
jmp 0x4770b9
xor eax, eax
and eax, eax
jne 0x4770cc
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x4770cc
jmp 0x4770d3
mov eax, 1
jmp 0x4770d5
xor eax, eax
and eax, eax
je 0x4770e4
mov ebx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x4c], ebx
jmp 0x477099
jmp 0x4770ee
mov dword [esp + 0x54], 0
mov ebp, dword [esp + 0x4c]
movsx ebx, byte [ebp]
cmp ebx, 0x28
jne 0x477124
push 0
push 0
push dword [0x46c6b0]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477613
mov ebx, dword [esp + 0x54]
and ebx, ebx
jne 0x477143
push dword [esp + 0x50]
call fcn.00413aa0
mov ebx, eax
cmp ebx, 1
jne 0x477143
mov eax, 1
jmp 0x477145
xor eax, eax
and eax, eax
je 0x477168
push 1
push dword [esp + 0x54]
mov eax, str.ABCUWLSFDQI
push eax
call fcn.004138a0
and eax, eax
je 0x477168
mov eax, 1
jmp 0x47716a
xor eax, eax
and eax, eax
je 0x477197
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477613
push dword [esp + 0x50]
mov edx, 0x45a4e0
pop ecx
call fcn.00401010
je 0x4771bd
mov ebx, dword [esp]
mov edi, dword [esp + 4]
add edi, 0xfffffff8
cmp ebx, edi
jge 0x4771bd
mov eax, 1
jmp 0x4771bf
xor eax, eax
and eax, eax
je 0x4771f4
push 0x18
push 8
push 1
mov eax, str..p_ascii
push eax
call fcn.00487c5f
push eax
push dword [esp + 0x10]
call fcn.00416b40
mov ebx, eax
and ebx, ebx
jne 0x4771f4
mov eax, 1
jmp 0x4771f6
xor eax, eax
and eax, eax
je 0x477276
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
push 7
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
call dword [esp + 0xa0]
mov ebx, dword [esp]
add ebx, 8
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x477613
push dword [esp + 0x50]
mov edx, 0x45a4e0
pop ecx
call fcn.00401010
je 0x47729c
mov ebx, dword [esp]
mov edi, dword [esp + 4]
add edi, 0xfffffff6
cmp ebx, edi
jge 0x47729c
mov eax, 1
jmp 0x47729e
xor eax, eax
and eax, eax
je 0x4772d3
push 0x18
push 0xa
push 1
mov eax, str..p_unicode
push eax
call fcn.00487c5f
push eax
push dword [esp + 0x10]
call fcn.00416b40
mov ebx, eax
and ebx, ebx
jne 0x4772d3
mov eax, 1
jmp 0x4772d5
xor eax, eax
and eax, eax
je 0x477355
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
push 9
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
call dword [esp + 0xa0]
mov ebx, dword [esp]
add ebx, 0xa
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x477613
push dword [esp + 0x50]
mov edx, 0x45a4e0
pop ecx
call fcn.00401010
je 0x47737b
mov ebx, dword [esp]
mov edi, dword [esp + 4]
add edi, 0xfffffff9
cmp ebx, edi
jge 0x47737b
mov eax, 1
jmp 0x47737d
xor eax, eax
and eax, eax
je 0x4773b2
push 0x18
push 7
push 1
mov eax, str..p_bstr
push eax
call fcn.00487c5f
push eax
push dword [esp + 0x10]
call fcn.00416b40
mov ebx, eax
and ebx, ebx
jne 0x4773b2
mov eax, 1
jmp 0x4773b4
xor eax, eax
and eax, eax
je 0x477434
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
push 6
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
call dword [esp + 0xa0]
mov ebx, dword [esp]
add ebx, 7
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x477613
push dword [esp + 0x50]
mov edx, 0x45a4e0
pop ecx
call fcn.00401010
je 0x47745a
mov ebx, dword [esp]
mov edi, dword [esp + 4]
add edi, 0xfffffff6
cmp ebx, edi
jge 0x47745a
mov eax, 1
jmp 0x47745c
xor eax, eax
and eax, eax
je 0x477491
push 0x18
push 0xa
push 1
mov eax, str..p_variant
push eax
call fcn.00487c5f
push eax
push dword [esp + 0x10]
call fcn.00416b40
mov ebx, eax
and ebx, ebx
jne 0x477491
mov eax, 1
jmp 0x477493
xor eax, eax
and eax, eax
je 0x477513
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
push 9
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
call dword [esp + 0xa0]
mov ebx, dword [esp]
add ebx, 0xa
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x477613
push dword [esp + 0x50]
mov edx, 0x45a4e0
pop ecx
call fcn.00401010
je 0x477539
mov ebx, dword [esp]
mov edi, dword [esp + 4]
add edi, 0xfffffff9
cmp ebx, edi
jge 0x477539
mov eax, 1
jmp 0x47753b
xor eax, eax
and eax, eax
je 0x477570
push 0x18
push 7
push 1
mov eax, str..p_utf8
push eax
call fcn.00487c5f
push eax
push dword [esp + 0x10]
call fcn.00416b40
mov ebx, eax
and ebx, ebx
jne 0x477570
mov eax, 1
jmp 0x477572
xor eax, eax
and eax, eax
je 0x4775ef
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
push 0
push 0
push dword [0x46c7e8]
push 6
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
call dword [esp + 0xa0]
mov ebx, dword [esp]
add ebx, 7
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x477613
push 0
push 0
push dword [0x46c840]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477644
mov ebx, dword [esp]
sub ebx, dword [esp + 0x1c]
and ebx, ebx
jle 0x477644
push 0
push 0
push dword [0x46c7e8]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov ebx, dword [esp + 0x34]
and ebx, ebx
jne 0x47765c
mov ebx, dword [esp + 0x3c]
cmp ebx, 0xfffffffe
je 0x47765c
mov eax, 1
jmp 0x47765e
xor eax, eax
and eax, eax
je 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x21
jne 0x477686
push dword [esp]
push dword [esp + 0xc]
call fcn.0047e902
and eax, eax
je 0x477686
mov eax, 1
jmp 0x477688
xor eax, eax
and eax, eax
je 0x4777b1
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x4776b4
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x3b
je 0x4776b4
mov eax, 1
jmp 0x4776b6
xor eax, eax
and eax, eax
je 0x4776cd
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x4776cd
mov eax, 1
jmp 0x4776cf
xor eax, eax
and eax, eax
je 0x4776e6
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x4776e6
mov eax, 1
jmp 0x4776e8
xor eax, eax
and eax, eax
je 0x4776fc
mov ebp, dword [esp]
cmp byte [ebp], 0
je 0x4776fc
mov eax, 1
jmp 0x4776fe
xor eax, eax
and eax, eax
je 0x47770b
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x477698
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x3b
je 0x477780
mov dword [esp + 0x40], 1
mov ebx, dword [esp]
inc ebx
cmp ebx, dword [esp + 4]
jge 0x477763
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x47774f
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x47774f
jmp 0x477756
mov eax, 1
jmp 0x477758
xor eax, eax
and eax, eax
je 0x477763
mov eax, 1
jmp 0x477765
xor eax, eax
and eax, eax
je 0x477770
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477780
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
push 0
push 0
push dword [0x46c7cc]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x22
jne 0x477901
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477831
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x22
je 0x4777f5
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x4777f5
mov eax, 1
jmp 0x4777f7
xor eax, eax
and eax, eax
je 0x47780e
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x47780e
mov eax, 1
jmp 0x477810
xor eax, eax
and eax, eax
je 0x477824
mov ebp, dword [esp]
cmp byte [ebp], 0
je 0x477824
mov eax, 1
jmp 0x477826
xor eax, eax
and eax, eax
je 0x477831
mov eax, 1
jmp 0x477833
xor eax, eax
and eax, eax
je 0x477840
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x4777cd
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x47785a
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x47785a
jmp 0x477861
mov eax, 1
jmp 0x477863
xor eax, eax
and eax, eax
je 0x4778c0
mov dword [esp + 0x40], 1
mov ebx, dword [esp]
inc ebx
cmp ebx, dword [esp + 4]
jge 0x4778b3
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x47789f
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x47789f
jmp 0x4778a6
mov eax, 1
jmp 0x4778a8
xor eax, eax
and eax, eax
je 0x4778b3
mov eax, 1
jmp 0x4778b5
xor eax, eax
and eax, eax
je 0x4778c0
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x4778d0
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
push 0
push 0
push dword [0x46c700]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x7e
jne 0x477923
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0x22
cmp ebx, eax
jne 0x477923
mov eax, 1
jmp 0x477925
xor eax, eax
and eax, eax
je 0x477b53
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
add ebx, 2
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477b19
mov ebp, dword [esp]
movsx ebx, byte [ebp]
push ebx
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x477967
add esp, 4
jmp 0x477b19
mov ebx, 0xd
cmp ebx, dword [esp]
je 0x47797b
mov ebx, 0xa
cmp ebx, dword [esp]
jne 0x4779e6
mov dword [esp + 0x44], 1
mov ebx, dword [esp + 4]
inc ebx
cmp ebx, dword [esp + 8]
jge 0x4779ca
mov ebp, dword [esp + 4]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x4779b6
mov ebp, dword [esp + 4]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x4779b6
jmp 0x4779bd
mov eax, 1
jmp 0x4779bf
xor eax, eax
and eax, eax
je 0x4779ca
mov eax, 1
jmp 0x4779cc
xor eax, eax
and eax, eax
je 0x4779d9
mov ebx, dword [esp + 4]
inc ebx
mov dword [esp + 4], ebx
add esp, 4
jmp 0x477b19
mov ebx, 0x22
cmp ebx, dword [esp]
jne 0x477a06
mov ebx, dword [esp + 4]
inc ebx
mov dword [esp + 4], ebx
add esp, 4
jmp 0x477b19
mov ebx, 0x5c
cmp ebx, dword [esp]
jne 0x477b0a
mov ebx, dword [esp + 4]
inc ebx
cmp ebx, dword [esp + 8]
jge 0x477afa
mov ebp, dword [esp + 4]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
push ebx
mov ebx, 0x61
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x62
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x66
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x6e
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x72
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x74
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x76
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x22
cmp ebx, dword [esp]
je 0x477a88
mov ebx, 0x5c
cmp ebx, dword [esp]
jne 0x477a95
mov ebx, dword [esp + 8]
add ebx, 2
mov dword [esp + 8], ebx
jmp 0x477af7
mov ebx, dword [esp + 8]
cmp ebx, dword [esp + 0x24]
jle 0x477ac3
push 0
push 0
push dword [0x46c700]
mov ebx, dword [esp + 0x14]
sub ebx, dword [esp + 0x30]
push ebx
push dword [esp + 0x34]
call dword [esp + 0xa8]
push 0
push 0
push dword [0x46c6b4]
push 2
push dword [esp + 0x34]
call dword [esp + 0xa8]
mov ebx, dword [esp + 8]
add ebx, 2
mov dword [esp + 8], ebx
push dword [esp + 8]
pop eax
mov dword [esp + 0x24], eax
pop eax
jmp 0x477b08
mov ebx, dword [esp + 4]
inc ebx
mov dword [esp + 4], ebx
add esp, 4
jmp 0x477b19
jmp 0x477b13
mov ebx, dword [esp + 4]
inc ebx
mov dword [esp + 4], ebx
pop eax
jmp 0x47793e
mov ebx, dword [esp]
cmp ebx, dword [esp + 0x1c]
jle 0x477b46
push 0
push 0
push dword [0x46c700]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3b
jne 0x477c9c
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x58], 1
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477bbb
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x477b98
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x477b98
mov eax, 1
jmp 0x477b9a
xor eax, eax
and eax, eax
je 0x477bae
mov ebp, dword [esp]
cmp byte [ebp], 0
je 0x477bae
mov eax, 1
jmp 0x477bb0
xor eax, eax
and eax, eax
je 0x477bbb
mov eax, 1
jmp 0x477bbd
xor eax, eax
and eax, eax
je 0x477bfa
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x20
je 0x477be0
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 9
je 0x477be0
mov eax, 1
jmp 0x477be2
xor eax, eax
and eax, eax
je 0x477bee
mov dword [esp + 0x58], 0
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x477b70
mov dword [esp + 0x40], 1
push dword [esp]
pop eax
mov dword [esp + 0x5c], eax
mov ebx, dword [esp]
inc ebx
cmp ebx, dword [esp + 4]
jge 0x477c4e
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x477c3a
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x477c3a
jmp 0x477c41
mov eax, 1
jmp 0x477c43
xor eax, eax
and eax, eax
je 0x477c4e
mov eax, 1
jmp 0x477c50
xor eax, eax
and eax, eax
je 0x477c5b
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477c6b
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
push 0
push 0
push dword [0x46c888]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x23
jne 0x477e77
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477cdc
mov ebp, dword [esp]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x477cdc
mov eax, 1
jmp 0x477cde
xor eax, eax
and eax, eax
je 0x477ceb
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x477cb8
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477d07
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x24
jne 0x477d07
mov eax, 1
jmp 0x477d09
xor eax, eax
and eax, eax
je 0x477d14
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
cmp dword [0x46c7c0], 0
je 0x477d2e
mov ebx, dword [0x46c6a8]
and ebx, ebx
jle 0x477d2e
mov eax, 1
jmp 0x477d30
xor eax, eax
and eax, eax
je 0x477d47
mov ebx, dword [esp]
mov edi, dword [esp + 0x1c]
inc edi
cmp ebx, edi
jle 0x477d47
mov eax, 1
jmp 0x477d49
xor eax, eax
and eax, eax
je 0x477d95
push dword [0x46e33c]
push dword [0x46e33c]
push dword [0x46e33c]
push 0x18
mov ebx, dword [esp + 0x10]
sub ebx, dword [esp + 0x2c]
push ebx
push dword [esp + 0x30]
call fcn.00416e60
mov edx, dword [0x46bd3c]
add dword [esp], edx
call fcn.0047e4c2
pop dword [0x46e33c]
and eax, eax
je 0x477d95
mov eax, 1
jmp 0x477d97
xor eax, eax
and eax, eax
je 0x477df6
mov ebx, dword [esp + 0x88]
and ebx, ebx
je 0x477dbe
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x1c]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jl 0x477dbe
jmp 0x477dc5
mov eax, 1
jmp 0x477dc7
xor eax, eax
and eax, eax
jne 0x477de2
mov ebx, dword [esp + 0x88]
mov edi, dword [esp]
sub edi, dword [esp + 0x80]
cmp ebx, edi
jg 0x477de2
jmp 0x477de9
mov eax, 1
jmp 0x477deb
xor eax, eax
and eax, eax
je 0x477df6
mov eax, 1
jmp 0x477df8
xor eax, eax
and eax, eax
je 0x477e46
push dword [0x46c6d0]
call fcn.00413aa0
push eax
push dword [esp + 0x20]
push dword [0x46c6d0]
call fcn.00487c5f
push eax
call fcn.0048d9a7
mov dword [esp + 0x44], eax
push dword [esp + 0x44]
push 0
push dword [0x46c718]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x477e6a
push 0
push 0
push dword [0x46c718]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x27
jne 0x477fd5
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477ef7
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x27
je 0x477ebb
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x477ebb
mov eax, 1
jmp 0x477ebd
xor eax, eax
and eax, eax
je 0x477ed4
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x477ed4
mov eax, 1
jmp 0x477ed6
xor eax, eax
and eax, eax
je 0x477eea
mov ebp, dword [esp]
cmp byte [ebp], 0
je 0x477eea
mov eax, 1
jmp 0x477eec
xor eax, eax
and eax, eax
je 0x477ef7
mov eax, 1
jmp 0x477ef9
xor eax, eax
and eax, eax
je 0x477f06
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x477e93
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x477f3d
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x477f29
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x477f29
jmp 0x477f30
mov eax, 1
jmp 0x477f32
xor eax, eax
and eax, eax
je 0x477f3d
mov eax, 1
jmp 0x477f3f
xor eax, eax
and eax, eax
je 0x477f9c
mov dword [esp + 0x40], 1
mov ebx, dword [esp]
inc ebx
cmp ebx, dword [esp + 4]
jge 0x477f8f
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xa
cmp ebx, eax
je 0x477f7b
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov eax, 0xd
cmp ebx, eax
je 0x477f7b
jmp 0x477f82
mov eax, 1
jmp 0x477f84
xor eax, eax
and eax, eax
je 0x477f8f
mov eax, 1
jmp 0x477f91
xor eax, eax
and eax, eax
je 0x477f9c
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
push 0
push 0
push dword [0x46c718]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
inc ebx
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x24
jne 0x4780d5
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x478092
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x30
jl 0x47801d
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x39
jg 0x47801d
mov eax, 1
jmp 0x47801f
xor eax, eax
and eax, eax
jne 0x47807e
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x41
jl 0x478042
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x46
jg 0x478042
mov eax, 1
jmp 0x478044
xor eax, eax
and eax, eax
jne 0x47806f
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x61
jl 0x478067
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x66
jg 0x478067
mov eax, 1
jmp 0x478069
xor eax, eax
and eax, eax
jne 0x47806f
jmp 0x478076
mov eax, 1
jmp 0x478078
xor eax, eax
and eax, eax
jne 0x47807e
jmp 0x478085
mov eax, 1
jmp 0x478087
xor eax, eax
and eax, eax
je 0x478092
mov eax, 1
jmp 0x478094
xor eax, eax
and eax, eax
je 0x4780a4
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x477ff1
push 0
push 0
push dword [0x46c6d4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x25
jne 0x478196
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x478128
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x31
je 0x478114
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x30
je 0x478114
jmp 0x47811b
mov eax, 1
jmp 0x47811d
xor eax, eax
and eax, eax
je 0x478128
mov eax, 1
jmp 0x47812a
xor eax, eax
and eax, eax
je 0x478137
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x4780f1
mov ebx, dword [esp]
mov edi, dword [esp + 0x1c]
inc edi
cmp ebx, edi
jne 0x478165
push 0
push 0
push dword [0x46c850]
push 1
push dword [esp + 0x2c]
call dword [esp + 0xa0]
jmp 0x478189
push 0
push 0
push dword [0x46c6d4]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x40
je 0x4781aa
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3f
je 0x4781aa
jmp 0x4781b1
mov eax, 1
jmp 0x4781b3
xor eax, eax
and eax, eax
je 0x478251
mov dword [esp + 0x60], 0
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x478211
mov ebp, dword [esp]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
jne 0x4781fd
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x24
je 0x4781fd
jmp 0x478204
mov eax, 1
jmp 0x478206
xor eax, eax
and eax, eax
je 0x478211
mov eax, 1
jmp 0x478213
xor eax, eax
and eax, eax
je 0x478220
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x4781d2
push 0
push 0
push dword [0x46c774]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2a
jne 0x4787aa
mov ebp, dword [esp]
push ebp
pop ebp
movzx ebx, byte [ebp + 1]
mov ebp, dword [0x46cc1c]
movsx ebx, byte [ebp + ebx]
and ebx, ebx
jne 0x47829b
push 0
push 0
push dword [0x46c850]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
jmp 0x4787a5
mov ebx, dword [esp]
dec ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], 1
mov ebx, dword [esp + 0x64]
cmp ebx, dword [esp + 0x80]
jl 0x4782cc
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0xa
je 0x4782cc
mov eax, 1
jmp 0x4782ce
xor eax, eax
and eax, eax
je 0x4782e6
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0xd
je 0x4782e6
mov eax, 1
jmp 0x4782e8
xor eax, eax
and eax, eax
je 0x478561
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x28
je 0x47830c
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x3a
je 0x47830c
jmp 0x478313
mov eax, 1
jmp 0x478315
xor eax, eax
and eax, eax
jne 0x478328
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x5b
je 0x478328
jmp 0x47832f
mov eax, 1
jmp 0x478331
xor eax, eax
and eax, eax
jne 0x478344
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2c
je 0x478344
jmp 0x47834b
mov eax, 1
jmp 0x47834d
xor eax, eax
and eax, eax
jne 0x478360
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2a
je 0x478360
jmp 0x478367
mov eax, 1
jmp 0x478369
xor eax, eax
and eax, eax
jne 0x47837c
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x3d
je 0x47837c
jmp 0x478383
mov eax, 1
jmp 0x478385
xor eax, eax
and eax, eax
jne 0x478398
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2b
je 0x478398
jmp 0x47839f
mov eax, 1
jmp 0x4783a1
xor eax, eax
and eax, eax
jne 0x4783b4
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2d
je 0x4783b4
jmp 0x4783bb
mov eax, 1
jmp 0x4783bd
xor eax, eax
and eax, eax
jne 0x4783d0
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2f
je 0x4783d0
jmp 0x4783d7
mov eax, 1
jmp 0x4783d9
xor eax, eax
and eax, eax
jne 0x4783ec
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x40
je 0x4783ec
jmp 0x4783f3
mov eax, 1
jmp 0x4783f5
xor eax, eax
and eax, eax
jne 0x478408
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x26
je 0x478408
jmp 0x47840f
mov eax, 1
jmp 0x478411
xor eax, eax
and eax, eax
jne 0x478424
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x7c
je 0x478424
jmp 0x47842b
mov eax, 1
jmp 0x47842d
xor eax, eax
and eax, eax
jne 0x478440
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x21
je 0x478440
jmp 0x478447
mov eax, 1
jmp 0x478449
xor eax, eax
and eax, eax
jne 0x47845c
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x7e
je 0x47845c
jmp 0x478463
mov eax, 1
jmp 0x478465
xor eax, eax
and eax, eax
jne 0x478478
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x3c
je 0x478478
jmp 0x47847f
mov eax, 1
jmp 0x478481
xor eax, eax
and eax, eax
jne 0x478494
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x3e
je 0x478494
jmp 0x47849b
mov eax, 1
jmp 0x47849d
xor eax, eax
and eax, eax
jne 0x4784b0
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x5c
je 0x4784b0
jmp 0x4784b7
mov eax, 1
jmp 0x4784b9
xor eax, eax
and eax, eax
jne 0x4784cc
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x25
je 0x4784cc
jmp 0x4784d3
mov eax, 1
jmp 0x4784d5
xor eax, eax
and eax, eax
je 0x4784e0
jmp 0x478561
mov ebp, dword [esp + 0x64]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
jne 0x478504
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x29
je 0x478504
jmp 0x47850b
mov eax, 1
jmp 0x47850d
xor eax, eax
and eax, eax
jne 0x478520
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x5d
je 0x478520
jmp 0x478527
mov eax, 1
jmp 0x478529
xor eax, eax
and eax, eax
jne 0x47853c
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2e
je 0x47853c
jmp 0x478543
mov eax, 1
jmp 0x478545
xor eax, eax
and eax, eax
je 0x478553
mov dword [esp + 0x68], 0
jmp 0x478561
mov ebx, dword [esp + 0x64]
dec ebx
mov dword [esp + 0x64], ebx
jmp 0x4782ab
mov ebp, dword [esp + 0x64]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x4786ef
push dword [esp + 0x64]
pop eax
mov dword [esp + 0x6c], eax
mov ebx, dword [esp + 0x64]
cmp ebx, dword [esp + 0x80]
jl 0x4785ac
mov ebp, dword [esp + 0x64]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x4785ac
mov eax, 1
jmp 0x4785ae
xor eax, eax
and eax, eax
je 0x4785bd
mov ebx, dword [esp + 0x64]
dec ebx
mov dword [esp + 0x64], ebx
jmp 0x478583
push dword [0x46e33c]
push 0
push 0
push dword [0x46e33c]
push dword [0x46e33c]
push 0x18
mov ebx, dword [esp + 0x84]
sub ebx, dword [esp + 0x7c]
push ebx
mov ebx, dword [esp + 0x80]
inc ebx
push ebx
call fcn.00416e60
mov edx, dword [0x46bd3c]
add dword [esp], edx
call fcn.0047539b
pop dword [0x46e33c]
mov dword [esp + 0x68], eax
mov ebx, dword [esp + 0x68]
and ebx, ebx
jne 0x47862c
mov ebx, dword [esp + 0x64]
cmp ebx, dword [esp + 0x80]
jl 0x47862c
mov eax, 1
jmp 0x47862e
xor eax, eax
and eax, eax
je 0x478646
mov ebp, dword [esp + 0x64]
movsx ebx, byte [ebp]
cmp ebx, 0x2e
jne 0x478646
mov eax, 1
jmp 0x478648
xor eax, eax
and eax, eax
je 0x4786ef
mov ebx, dword [esp + 0x64]
dec ebx
mov dword [esp + 0x64], ebx
push dword [esp + 0x64]
pop eax
mov dword [esp + 0x6c], eax
mov ebx, dword [esp + 0x64]
cmp ebx, dword [esp + 0x80]
jl 0x47868b
mov ebp, dword [esp + 0x64]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
je 0x47868b
mov eax, 1
jmp 0x47868d
xor eax, eax
and eax, eax
je 0x47869c
mov ebx, dword [esp + 0x64]
dec ebx
mov dword [esp + 0x64], ebx
jmp 0x478662
push dword [0x46e33c]
push 0
push 0
push dword [0x46e33c]
push dword [0x46e33c]
push 0x18
mov ebx, dword [esp + 0x84]
sub ebx, dword [esp + 0x7c]
push ebx
mov ebx, dword [esp + 0x80]
inc ebx
push ebx
call fcn.00416e60
mov edx, dword [0x46bd3c]
add dword [esp], edx
call fcn.0047539b
pop dword [0x46e33c]
mov dword [esp + 0x68], eax
mov ebx, dword [esp + 0x68]
and ebx, ebx
jne 0x47871c
push 0
push 0
push dword [0x46c850]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
jmp 0x4787a5
push dword [esp]
pop eax
mov dword [esp + 0x1c], eax
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
mov ebx, dword [esp]
cmp ebx, dword [esp + 4]
jge 0x47876a
mov ebp, dword [esp]
movzx ebx, byte [ebp]
mov ebp, dword [0x46cc1c]
cmp byte [ebp + ebx], 0
jne 0x478756
mov ebp, dword [esp]
movsx ebx, byte [ebp]
cmp ebx, 0x24
je 0x478756
jmp 0x47875d
mov eax, 1
jmp 0x47875f
xor eax, eax
and eax, eax
je 0x47876a
mov eax, 1
jmp 0x47876c
xor eax, eax
and eax, eax
je 0x478779
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
jmp 0x47872b
push 0
push 0
push dword [0x46c774]
mov ebx, dword [esp + 0xc]
sub ebx, dword [esp + 0x28]
push ebx
push dword [esp + 0x2c]
call dword [esp + 0xa0]
mov dword [esp + 0x3c], 0xfffffffe
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3d
je 0x4787be
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2b
je 0x4787be
jmp 0x4787c5
mov eax, 1
jmp 0x4787c7
xor eax, eax
and eax, eax
jne 0x4787d6
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2d
je 0x4787d6
jmp 0x4787dd
mov eax, 1
jmp 0x4787df
xor eax, eax
and eax, eax
jne 0x4787ee
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2f
je 0x4787ee
jmp 0x4787f5
mov eax, 1
jmp 0x4787f7
xor eax, eax
and eax, eax
jne 0x478806
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x26
je 0x478806
jmp 0x47880d
mov eax, 1
jmp 0x47880f
xor eax, eax
and eax, eax
jne 0x47881e
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x7c
je 0x47881e
jmp 0x478825
mov eax, 1
jmp 0x478827
xor eax, eax
and eax, eax
jne 0x478836
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x21
je 0x478836
jmp 0x47883d
mov eax, 1
jmp 0x47883f
xor eax, eax
and eax, eax
jne 0x47884e
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x7e
je 0x47884e
jmp 0x478855
mov eax, 1
jmp 0x478857
xor eax, eax
and eax, eax
jne 0x478866
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3c
je 0x478866
jmp 0x47886d
mov eax, 1
jmp 0x47886f
xor eax, eax
and eax, eax
jne 0x47887e
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3e
je 0x47887e
jmp 0x478885
mov eax, 1
jmp 0x478887
xor eax, eax
and eax, eax
je 0x4788b0
push 0
push 0
push dword [0x46c850]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x28
je 0x4788c4
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x29
je 0x4788c4
jmp 0x4788cb
mov eax, 1
jmp 0x4788cd
xor eax, eax
and eax, eax
jne 0x4788dc
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x5b
je 0x4788dc
jmp 0x4788e3
mov eax, 1
jmp 0x4788e5
xor eax, eax
and eax, eax
jne 0x4788f4
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x5d
je 0x4788f4
jmp 0x4788fb
mov eax, 1
jmp 0x4788fd
xor eax, eax
and eax, eax
jne 0x47890c
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2e
je 0x47890c
jmp 0x478913
mov eax, 1
jmp 0x478915
xor eax, eax
and eax, eax
jne 0x478924
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x2c
je 0x478924
jmp 0x47892b
mov eax, 1
jmp 0x47892d
xor eax, eax
and eax, eax
jne 0x47893c
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x3a
je 0x47893c
jmp 0x478943
mov eax, 1
jmp 0x478945
xor eax, eax
and eax, eax
jne 0x478954
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x5c
je 0x478954
jmp 0x47895b
mov eax, 1
jmp 0x47895d
xor eax, eax
and eax, eax
je 0x478983
push 0
push 0
push dword [0x46c830]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
jmp 0x4789ab
mov ebx, dword [esp + 0x3c]
and ebx, ebx
jle 0x4789ab
push 0
push 0
push dword [0x46c7e8]
push 1
push dword [esp + 0x10]
call dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
and ebx, ebx
jle 0x4789ba
mov ebx, dword [esp]
inc ebx
mov dword [esp], ebx
push dword [esp + 0x14]
pop eax
mov dword [esp + 0x18], eax
push dword [esp + 0x3c]
pop eax
mov dword [esp + 0x14], eax
cmp dword [esp + 0x40], 0
je 0x4789eb
push dword [esp]
pop eax
mov dword [esp + 8], eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov ebx, dword [esp + 0x3c]
cmp ebx, 0xffffffff
jne 0x4789f6
jmp 0x4789fb
jmp 0x4762cc
xor eax, eax
push dword [esp + 0x30]
call fcn.00417270
push dword [esp + 0x50]
call fcn.00417270
add esp, 0x70
pop edi
pop ebx
pop ebp
ret 0x14