Function at 0x42e7d0
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3044
call fcn.004a7dd0
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
push ebx
xor ecx, ecx
push esi
push edi
mov dword [ebp - 4], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x28], eax
test eax, eax
je 0x42e811
cmp dword [eax], 0
je 0x42e811
mov edx, dword [ebp - 0xc]
mov esi, eax
mov dword [ebp - 0x1c], esi
cmp edx, dword [eax]
jb 0x42e822
jmp 0x42f7b6
mov eax, dword [ebp - 0xc]
xor esi, esi
mov dword [ebp - 0x1c], esi
cmp word [eax], si
je 0x42fd4d
cmp ecx, 0x1ff
jg 0x430804
mov eax, dword [ebp - 0xc]
movzx edx, word [eax]
cmp edx, 0x20
je 0x42e83e
cmp edx, 9
jne 0x42e843
add eax, 2
jmp 0x42e831
cmp word [eax], 0
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], eax
je 0x42f7ae
test esi, esi
je 0x42e85f
cmp eax, dword [esi]
jae 0x42f7ae
shl ecx, 4
lea esi, [ebp + ecx - 0x2840]
mov dword [esi], 0
movzx edx, word [eax]
movzx edi, word [eax + 2]
add edx, 0xffffffdf
lea ebx, [eax + 2]
mov dword [ebp - 0x18], ecx
cmp edx, 0x5d
ja case.0x42e88f.35
movzx edx, byte [edx + 0x430884]
jmp dword [edx*4 + 0x430828]
cmp edi, 0x3d
jne 0x42e8b7
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x14
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42e901
cmp dword [ebp + ecx - 0x2848], 0xf
jge 0x42e901
cmp edi, 0x2b
jne 0x42e8e8
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 9
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x34
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x2b
jne 0x42e922
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x3f
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
dec dword [ebp - 4]
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42e958
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x15
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42e9a2
cmp dword [ebp + ecx - 0x2848], 0xf
jge 0x42e9a2
cmp edi, 0x2d
jne 0x42e989
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0xa
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x35
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x2d
jne 0x42e9c3
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x40
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [esi + 8], 0x39
cmp edi, 0x30
jl 0x42e9d4
cmp edi, 0x39
jle 0x42e9dd
cmp edi, 0x2e
jne 0x42f54f
mov edi, dword [ebp - 0x14]
movzx eax, word [edi + 4]
add edi, 4
push eax
push 0x4b7564
mov dword [ebp - 8], edi
call fcn.0049a90e
add esp, 8
test eax, eax
jne 0x42ea1c
lea esp, [esp]
movzx ecx, word [edi + 2]
add edi, 2
push ecx
push 0x4b7564
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42ea00
mov dword [ebp - 8], edi
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42ea30
cmp edi, dword [eax]
jae 0x42f54f
mov edi, dword [ebp - 8]
mov edi, edi
movzx eax, word [edi]
cmp eax, 0x20
je 0x42ea3d
cmp eax, 9
jne 0x42ea42
add edi, 2
jmp 0x42ea30
cmp word [edi], 0x2a
jne 0x42ea53
cmp word [edi + 2], 0x2a
je 0x42f54f
mov ecx, dword [ebp - 8]
movzx eax, word [ecx]
cmp eax, 0x2d
je 0x42ea67
cmp eax, 0x2b
jne 0x42eb08
movzx edi, word [ecx - 2]
test edi, 0xffffff80
jne 0x42ea85
push 2
push edi
call fcn.0049b90c
add esp, 8
test eax, eax
je 0x42ea85
and edi, 0xffffffdf
cmp di, 0x45
jne 0x42eb08
mov ecx, dword [ebp - 0x14]
cmp word [ecx], 0x30
jne 0x42eabb
movzx edi, word [ebx]
test edi, 0xffffff80
jne 0x42eab5
push 2
push edi
call fcn.0049b90c
add esp, 8
test eax, eax
je 0x42eab5
and edi, 0xffffffdf
cmp di, 0x58
je 0x42eb08
mov eax, dword [ebp - 0x14]
cmp word [eax], 0x2d
mov ecx, dword [ebp - 8]
jne 0x42eaf4
cmp word [ebx], 0x30
jne 0x42eaf4
movzx ebx, word [eax + 4]
test ebx, 0xffffff80
jne 0x42eaeb
push 2
push ebx
call fcn.0049b90c
add esp, 8
test eax, eax
je 0x42eaeb
and ebx, 0xffffffdf
cmp bx, 0x58
je 0x42eb08
mov ecx, dword [ebp - 8]
movzx eax, word [ecx + 2]
add ecx, 2
cmp eax, 0x30
jb 0x42eb05
cmp eax, 0x39
jbe 0x42eaf4
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 4]
test eax, eax
je 0x42eb32
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xf
jge 0x42eb32
cmp eax, 0x1fe
jg 0x430804
inc eax
mov dword [esi + 8], 0x2d
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x14]
mov edi, eax
mov eax, dword [ebp - 8]
sub eax, ecx
add edi, edi
sar eax, 1
mov dword [ebp + edi*8 - 0x2838], 5
cmp word [ecx], 0
mov edx, eax
mov dword [ebp - 0x20], edx
je 0x42f786
cmp eax, 0xffffffff
jne 0x42eb78
mov eax, ecx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42eb64
sub eax, edx
sar eax, 1
mov edx, eax
mov dword [ebp - 0x20], eax
lea esi, [edx + edx]
mov dword [ebp - 0x18], esi
add esi, 2
lea eax, [esi - 1]
cmp eax, 0xffff
ja 0x42ebe5
cmp dword [0x4da650], 0
jne 0x42eba2
call fcn.0047d030
mov dword [0x4da650], eax
test eax, eax
je 0x42ebe5
mov ecx, dword [0x4da654]
cmp esi, dword [ecx + 8]
jbe 0x42ebbf
call fcn.0047d030
mov ecx, dword [0x4da654]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x42ebe5
mov ebx, dword [ecx + 4]
mov eax, esi
and eax, 3
mov dword [0x4da658], ebx
je 0x42ebd4
sub esi, eax
add esi, 4
sub dword [ecx + 8], esi
lea edx, [ebx + esi]
mov dword [ecx + 4], edx
test ebx, ebx
jne 0x42f762
mov eax, dword [ebp - 0x14]
push eax
push 0x4b3980
mov ecx, 0x4da728
call fcn.0043a420
xor eax, eax
jmp 0x42f78b
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x12
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42ec39
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x17
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x2f
jne 0x42ec7f
add eax, 4
cmp word [eax], 0x3d
jne 0x42ec63
mov dword [ebp - 0xc], eax
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x18
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x38
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x37
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42ecb9
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x16
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x2a
jne 0x42ecda
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x3e
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42ecef
cmp dword [ebp + ecx - 0x2848], 0xf
mov eax, 0x36
jl 0x42ecf4
mov eax, 0x3d
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42ed51
mov dword [ebp - 0xc], ebx
cmp word [ebx + 2], di
jne 0x42ed37
add ebx, 2
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, 0x28
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, 0x27
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x3a
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42edaa
cmp dword [ebp + ecx - 0x2848], 0xf
jge 0x42edaa
mov edx, dword [ebp - 0x14]
movzx eax, word [edx - 2]
push eax
push 0x4b9564
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42edaa
cmp dword [ebp - 4], 0x1fe
jg 0x430804
inc dword [ebp - 4]
mov dword [esi + 8], 0x2d
mov ecx, dword [ebp - 4]
add dword [ebp - 0xc], 2
mov esi, dword [ebp - 0x1c]
add ecx, ecx
inc dword [ebp - 4]
mov dword [ebp + ecx*8 - 0x2838], 0xf
mov ecx, dword [ebp - 4]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0xc
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42ee2a
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xb
jne 0x42ee2a
mov eax, ebx
call fcn.00403ff0
cmp word [eax], 0x5d
je 0x42ee2a
dec dword [ebp - 4]
mov edx, dword [ebp - 4]
add dword [ebp - 0xc], 2
mov esi, dword [ebp - 0x1c]
add edx, edx
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [ebp + edx*8 - 0x2838], 0x10
jmp 0x42e822
mov eax, 0xc
call fcn.0047cfc0
mov edi, eax
test edi, edi
je 0x42fced
cmp dword [ebp - 4], 0
je 0x42ee5e
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax - 0x2848], 0xf
jge 0x42ee5e
mov dword [edi + 4], 0x4d6d40
mov byte [edi + 9], 1
jmp 0x42ee78
push 0
push 0
push 0x4b8dd4
mov ecx, 0x4da728
call fcn.0042b560
mov dword [edi + 4], eax
mov byte [edi + 9], 0
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x14]
add dword [ebp - 0xc], 2
mov dword [edi], ecx
add edx, edx
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov byte [edi + 8], 1
mov dword [esi], edi
mov esi, dword [ebp - 0x1c]
mov dword [ebp + edx*8 - 0x2838], 0x10
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0xd
mov dword [esi + 4], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42eed5
cmp dword [ebp + ecx - 0x2848], 0xf
jl 0x42fcfe
mov eax, 0xc
call fcn.0047cfc0
mov edi, eax
test edi, edi
je 0x42fced
push 0
push 0
push 0x4b9590
mov ecx, 0x4da728
call fcn.0042b560
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x14]
mov word [edi + 8], 1
mov dword [edi], eax
mov dword [esi], edi
mov dword [esi + 8], 0x11
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0xe
mov dword [esi + 4], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42ef62
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x26
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x25
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
sub edi, 0x3d
je 0x42f02f
dec edi
je 0x42efa0
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x29
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add eax, 4
cmp word [eax], 0x3d
jne 0x42efc5
mov dword [ebp - 0xc], eax
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x1d
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp word [ebx + 2], 0x3e
mov dword [ebp - 0xc], ebx
jne 0x42f016
cmp word [ebx + 4], 0x3d
lea eax, [ebx + 2]
mov dword [ebp - 0xc], eax
jne 0x42effc
add eax, 2
mov dword [ebp - 0xc], eax
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, 0x1e
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, 0x33
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x32
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x2b
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
sub edi, 0x3c
je 0x42f0a7
dec edi
je 0x42f08b
dec edi
je 0x42f06f
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x2a
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x27
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x2c
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add eax, 4
cmp word [eax], 0x3d
jne 0x42f0cc
mov dword [ebp - 0xc], eax
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x1c
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x31
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x26
jne 0x42f109
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x23
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42f12a
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x1b
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42f13f
cmp dword [ebp + ecx - 0x2848], 0xf
mov eax, 0x30
jl 0x42f144
mov eax, 0x3c
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], eax
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x7c
jne 0x42f17a
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x22
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42f19b
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x19
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x2e
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42f1d5
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x1a
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x2f
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42f245
lea eax, [edi - 0x31]
mov dword [ebp - 0xc], ebx
call fcn.0047cfc0
mov dword [esi], eax
test eax, eax
je 0x42fced
push 0
push 0
push 0x4b52a4
mov ecx, 0x4da728
call fcn.0042b560
mov ecx, dword [esi]
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov dword [ecx + 4], eax
mov edx, dword [esi]
mov ecx, dword [ebp - 4]
mov byte [edx + 8], 1
mov eax, dword [esi]
mov byte [eax + 9], 2
mov dword [esi + 8], 0x43
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x3b
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x21
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x3d
jne 0x42f298
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x13
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x20
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
mov eax, dword [ebp - 4]
test eax, eax
je 0x42f2d8
cmp dword [ebp + ecx - 0x2848], 0xf
jge 0x42f2d8
cmp eax, 0x1fe
jg 0x430804
inc eax
mov dword [esi + 8], 0x2d
mov dword [ebp - 4], eax
mov esi, ebx
lea ebx, [ebx]
movzx eax, word [esi]
test ax, ax
je 0x42fd0f
cmp eax, 0x22
jne 0x42f2f9
add esi, 2
cmp word [esi], ax
jne 0x42f2fe
add esi, 2
jmp 0x42f2e0
mov edi, dword [ebp - 4]
mov ecx, esi
sub ecx, ebx
sar ecx, 1
add edi, edi
lea ecx, [ecx - 1]
push ebx
mov dword [ebp + edi*8 - 0x2838], 0
call fcn.0047cf40
add esp, 4
mov dword [ebp + edi*8 - 0x2840], eax
test eax, eax
je 0x42fced
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4b95a0
push 0x4b95a4
push eax
xor eax, eax
call fcn.00480750
add esp, 0x1c
mov eax, esi
call fcn.00403ff0
mov esi, eax
movzx eax, word [esi]
mov dword [ebp - 0xc], esi
test ax, ax
je 0x42f7a0
push eax
push 0x4b95ac
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42f7a0
movzx eax, word [esi + 2]
cmp eax, 0x3d
je 0x42f7a0
cmp eax, 0x26
jne 0x42f395
cmp word [esi], ax
je 0x42f7a0
mov eax, dword [ebp - 4]
cmp eax, 0x1fe
jg 0x430804
mov esi, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 4], eax
add eax, eax
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [ebp + eax*8 - 0x2838], 0x2d
jmp 0x42e822
cmp word [eax], 0x2e
jne 0x42f561
cmp edi, 0x3d
jne 0x42f3ed
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x1f
mov esi, dword [ebp - 0x1c]
jmp 0x42e822
cmp edi, 0x20
je 0x42f52c
cmp edi, 9
je 0x42f52c
mov eax, dword [ebp - 4]
test eax, eax
je 0x42f561
cmp dword [ebp + ecx - 0x2848], 0xf
lea ecx, [ebp + ecx - 0x2838]
mov dword [ebp - 0x20], ecx
jge 0x42f561
cmp eax, 0x1fe
jg 0x430804
mov eax, ebx
call fcn.0043b940
mov edi, eax
movzx ecx, word [edi]
push ecx
push 0x4b761c
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42fd20
cmp edi, ebx
jne 0x42f45d
cmp word [edi], 0x28
jne 0x42fd2d
lea eax, [esi - 0x10]
lea edx, [ebp - 0x2840]
mov byte [ebp - 0x21], 0
cmp eax, edx
jb 0x42f4a0
mov edi, edi
cmp dword [eax + 8], 0xb
jne 0x42f485
sub eax, 0x20
lea ecx, [ebp - 0x2840]
cmp eax, ecx
jae 0x42f470
jmp 0x42f4a0
cmp dword [eax + 8], 8
jge 0x42f498
lea edx, [ebp - 0x2840]
cmp eax, edx
jbe 0x42f498
sub eax, 0x10
cmp dword [eax + 8], 0x42
sete byte [ebp - 0x21]
mov eax, dword [ebp - 0x20]
mov ecx, edi
sub ecx, ebx
sar ecx, 1
push ebx
mov dword [eax], 5
call fcn.0047cf40
add esp, 4
mov dword [esi], eax
test eax, eax
je 0x42fced
inc dword [ebp - 4]
mov eax, 0xc
call fcn.0047cfc0
test eax, eax
je 0x42fced
add ebx, 0xfffffffe
mov dword [eax], ebx
mov word [eax + 8], 0x201
cmp word [edi], 0x28
jne 0x42f4fc
cmp byte [ebp - 0x21], 0
jne 0x42f4fc
mov edx, 0x41
mov dword [eax + 4], 0x4d6f40
jmp 0x42f508
mov edx, 0xb
mov dword [eax + 4], 0x4d6d40
mov ecx, dword [ebp - 4]
mov esi, dword [ebp - 0x1c]
add ecx, ecx
inc dword [ebp - 4]
mov dword [ebp + ecx*8 - 0x2838], edx
mov dword [ebp + ecx*8 - 0x2840], eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0xc], edi
jmp 0x42e822
cmp dword [ebp - 4], 0
je 0x42fd3d
movzx eax, word [eax - 2]
cmp eax, 0x20
je 0x42f548
cmp eax, 9
jne 0x42fd3d
mov dword [esi + 8], 0x2d
add dword [ebp - 0xc], 2
inc dword [ebp - 4]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
jmp 0x42e822
mov eax, ebx
movzx ecx, word [eax]
push ecx
push 0x4b761c
mov dword [ebp - 8], eax
call fcn.0049a90e
add esp, 8
test eax, eax
jne 0x42f59f
jmp 0x42f580
mov eax, dword [ebp - 8]
movzx edx, word [eax + 2]
add eax, 2
push edx
push 0x4b761c
mov dword [ebp - 8], eax
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42f580
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f5b1
mov ecx, dword [ebp - 8]
cmp ecx, dword [eax]
jae 0x42f864
mov edx, dword [ebp - 8]
cmp word [edx], 0x2e
jne 0x42f5ff
mov eax, edx
add eax, 2
mov dword [ebp - 8], eax
movzx eax, word [eax]
push eax
push 0x4b761c
call fcn.0049a90e
add esp, 8
test eax, eax
jne 0x42f5ff
jmp 0x42f5e0
mov eax, dword [ebp - 8]
movzx ecx, word [eax + 2]
add eax, 2
push ecx
push 0x4b761c
mov dword [ebp - 8], eax
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42f5e0
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x14]
sar eax, 1
cmp eax, 3
jne 0x42ea53
mov edx, dword [ebp - 0x14]
movzx eax, word [edx]
cmp eax, 0x6e
je 0x42f624
cmp eax, 0x4e
jne 0x42ea53
mov ecx, dword [ebp - 8]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42f634
cmp eax, 9
jne 0x42f639
add ecx, 2
jmp 0x42f627
cmp word [ecx], 0x3a
je 0x42ea53
cmp edi, 0x6f
je 0x42f64d
cmp edi, 0x4f
jne 0x42f666
mov eax, dword [ebp - 0x14]
movzx eax, word [eax + 4]
cmp eax, 0x74
je 0x42f747
cmp eax, 0x54
je 0x42f747
cmp edi, 0x65
je 0x42f674
cmp edi, 0x45
jne 0x42ea53
mov ecx, dword [ebp - 0x14]
movzx eax, word [ecx + 4]
cmp eax, 0x77
je 0x42f689
cmp eax, 0x57
jne 0x42ea53
mov eax, dword [ebp - 4]
test eax, eax
je 0x42f6b3
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xf
jge 0x42f6b3
cmp eax, 0x1fe
jg 0x430804
inc eax
mov dword [esi + 8], 0x2d
mov dword [ebp - 4], eax
cmp dword [0x4da650], 0
jne 0x42f6ce
call fcn.0047d030
mov dword [0x4da650], eax
test eax, eax
je 0x42fced
mov ecx, dword [0x4da654]
cmp dword [ecx + 8], 0xc
jae 0x42f6f0
call fcn.0047d030
mov ecx, dword [0x4da654]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x42fced
mov eax, dword [ecx + 4]
add dword [ecx + 8], 0xfffffff4
lea edx, [eax + 0xc]
mov dword [0x4da658], eax
mov dword [ecx + 4], edx
test eax, eax
je 0x42fced
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
mov esi, dword [ebp - 0x1c]
mov dword [eax], ecx
mov ecx, dword [ebp - 4]
add ecx, ecx
inc dword [ebp - 4]
mov dword [eax + 4], 0x4d6e00
mov word [eax + 8], 0x101
mov dword [ebp + ecx*8 - 0x2838], 0x42
mov dword [ebp + ecx*8 - 0x2840], eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0xc], edx
jmp 0x42e822
mov eax, dword [ebp - 8]
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov dword [esi + 8], 0x24
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 0xc], eax
jmp 0x42e822
cmp dword [ebp - 0x20], 0
je 0x42f779
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ecx
push edx
push ebx
call fcn.004a3c00
add esp, 0xc
mov ecx, dword [ebp - 0x18]
xor eax, eax
mov word [ecx + ebx], ax
mov eax, ebx
jmp 0x42f78b
mov eax, 0x4b0cf8
mov dword [ebp + edi*8 - 0x2840], eax
test eax, eax
je 0x42fced
mov edx, dword [ebp - 8]
mov dword [ebp - 0xc], edx
inc dword [ebp - 4]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
jmp 0x42e822
test esi, esi
je 0x42fd4d
cmp ecx, 0x1ff
jg 0x430804
cmp byte [esi + 8], 0
je 0x42f814
test ecx, ecx
je 0x42f7f7
mov eax, ecx
add eax, eax
cmp dword [ebp + eax*8 - 0x2848], 0xf
lea eax, [ebp + eax*8 - 0x2838]
jge 0x42f7f7
cmp ecx, 0x1fe
jg 0x430804
inc ecx
mov dword [eax], 0x2d
mov dword [ebp - 4], ecx
add ecx, ecx
mov dword [ebp + ecx*8 - 0x2838], 0x41
mov dword [ebp + ecx*8 - 0x2840], esi
mov byte [esi + 9], 0
jmp 0x42fcc7
mov eax, dword [esi]
mov dx, word [eax]
cmp dx, word [0x4d5a3c]
jne 0x42fbb2
mov ecx, dword [ebp - 0x1c]
movzx edx, word [ecx + 0xa]
lea esi, [eax + edx*2]
movzx eax, word [esi]
push eax
push 0x4b761c
mov dword [ebp - 8], esi
call fcn.0049a90e
add esp, 8
test eax, eax
jne 0x42f864
movzx ecx, word [esi + 2]
add esi, 2
push ecx
push 0x4b761c
call fcn.0049a90e
add esp, 8
test eax, eax
je 0x42f848
mov dword [ebp - 8], esi
mov eax, dword [ebp - 4]
test eax, eax
je 0x42f895
mov edx, eax
add edx, edx
cmp dword [ebp + edx*8 - 0x2848], 0xf
lea ecx, [ebp + edx*8 - 0x2838]
jge 0x42f895
cmp eax, 0x1fe
jg 0x430804
inc eax
mov dword [ecx], 0x2d
mov dword [ebp - 4], eax
mov edx, dword [ebp - 0xc]
mov ecx, eax
shl ecx, 4
lea eax, [ebp + ecx - 0x2838]
mov dword [ebp - 0x20], eax
mov dword [eax], 7
mov eax, dword [ebp - 8]
sub eax, edx
sar eax, 1
mov esi, eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], esi
test edx, edx
je 0x42f99d
cmp word [edx], 0
je 0x42f99d
cmp eax, 0xffffffff
jne 0x42f8f4
mov eax, edx
lea edx, [eax + 2]
jmp 0x42f8e0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42f8e0
sub eax, edx
sar eax, 1
mov esi, eax
mov dword [ebp - 0x1c], eax
add esi, esi
mov dword [ebp - 0x14], esi
add esi, 2
lea eax, [esi - 1]
cmp eax, 0xffff
ja 0x42f95c
cmp dword [0x4da650], 0
jne 0x42f91d
call fcn.0047d030
mov dword [0x4da650], eax
test eax, eax
je 0x42f95c
mov edi, dword [0x4da654]
cmp esi, dword [edi + 8]
jbe 0x42f93a
call fcn.0047d030
mov edi, dword [0x4da654]
mov dword [edi + 0xc], eax
test eax, eax
je 0x42f95c
mov ebx, dword [edi + 4]
mov eax, esi
and eax, 3
mov dword [0x4da658], ebx
je 0x42f94f
sub esi, eax
add esi, 4
sub dword [edi + 8], esi
lea ecx, [esi + ebx]
mov dword [edi + 4], ecx
test ebx, ebx
jne 0x42f976
mov edx, dword [ebp - 0xc]
push edx
push 0x4b3980
mov ecx, 0x4da728
call fcn.0043a420
mov ecx, dword [ebp - 0x18]
xor eax, eax
jmp 0x42f9a2
cmp dword [ebp - 0x1c], 0
je 0x42f98d
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
push eax
push ecx
push ebx
call fcn.004a3c00
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov word [ebx + eax], dx
mov eax, ebx
jmp 0x42f9a8
mov eax, 0x4b0cf8
mov edi, dword [0x4da654]
mov dword [ebp + ecx - 0x283c], eax
test eax, eax
je 0x42fced
mov esi, dword [ebp - 0x28]
mov eax, dword [esi + 0xc]
mov edx, esi
add esi, 0xc
mov dword [ebp - 0x14], edx
test eax, eax
je 0x42f9de
mov ecx, dword [ebp - 8]
lea esp, [esp]
cmp eax, ecx
jae 0x42f9de
mov eax, dword [esi + 0xc]
add esi, 0xc
test eax, eax
jne 0x42f9d0
mov ecx, esi
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
add eax, eax
add eax, eax
lea ebx, [eax + 0xc]
lea ecx, [ebx - 1]
sub esi, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], ebx
cmp ecx, 0xffff
ja 0x42fced
cmp dword [0x4da650], 0
jne 0x42fa7f
push 0x10
call fcn.0049a782
mov edi, eax
add esp, 4
test edi, edi
je 0x42fa53
push 0x10000
mov dword [edi + 0xc], 0
call fcn.0049a0ee
add esp, 4
mov dword [edi + 4], eax
mov dword [edi], eax
test eax, eax
jne 0x42fa5d
push edi
call fcn.0049a182
add esp, 4
mov edi, dword [0x4da654]
xor eax, eax
jmp 0x42fa72
inc dword [0x4da65c]
mov dword [edi + 8], 0x10000
mov dword [0x4da654], edi
mov eax, edi
mov dword [0x4da650], eax
test eax, eax
je 0x42fced
cmp ebx, dword [edi + 8]
jbe 0x42fae4
push 0x10
call fcn.0049a782
mov edi, eax
add esp, 4
test edi, edi
je 0x42faba
push 0x10000
mov dword [edi + 0xc], 0
call fcn.0049a0ee
add esp, 4
mov dword [edi + 4], eax
mov dword [edi], eax
test eax, eax
jne 0x42fac4
push edi
call fcn.0049a182
add esp, 4
mov edi, dword [0x4da654]
xor eax, eax
jmp 0x42fad9
inc dword [0x4da65c]
mov dword [edi + 8], 0x10000
mov dword [0x4da654], edi
mov eax, edi
mov dword [edi + 0xc], eax
test eax, eax
je 0x42fced
mov ecx, dword [ebp - 0x28]
mov ebx, dword [edi + 4]
mov eax, ecx
and eax, 3
mov dword [0x4da658], ebx
je 0x42fafc
sub ecx, eax
add ecx, 4
sub dword [edi + 8], ecx
lea edx, [ecx + ebx]
mov dword [edi + 4], edx
test ebx, ebx
je 0x42fced
mov edi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
push edi
push eax
push ebx
call fcn.004a3c00
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov dword [edi + ebx], 0
cmp dword [ebx], 0
mov eax, ebx
je 0x42fb4a
mov edx, dword [eax]
sub edx, dword [ebp - 0xc]
mov edi, dword [ebp + ecx - 0x283c]
sar edx, 1
lea edx, [edi + edx*2]
mov dword [eax], edx
add eax, 0xc
cmp dword [eax], 0
jne 0x42fb2f
mov edi, dword [ebp - 8]
mov edx, dword [ebp - 4]
mov dword [ebp + ecx - 0x2840], ebx
cmp word [edi], 0x28
jne 0x42fba6
test edx, edx
je 0x42fb6a
mov ecx, dword [ebp - 0x20]
cmp dword [ecx - 0x10], 0x42
je 0x42fba6
cmp edx, 0x1fe
jg 0x430804
mov byte [eax + 8], 1
mov dword [eax + 4], 0
mov cl, byte [ebx + 9]
mov byte [eax + 9], cl
inc edx
mov ecx, edx
add ecx, ecx
mov dword [ebp + ecx*8 - 0x2838], 0x41
mov dword [ebp + ecx*8 - 0x2840], eax
mov dword [ebp - 0xc], edi
jmp 0x42fcda
mov byte [eax + 8], 0
mov dword [ebp - 0xc], edi
jmp 0x42fcda
test ecx, ecx
je 0x42fbe1
mov edx, ecx
add edx, edx
cmp dword [ebp + edx*8 - 0x2848], 0xf
lea eax, [ebp + edx*8 - 0x2838]
jge 0x42fbe1
cmp ecx, 0x1fe
jg 0x430804
inc ecx
mov dword [eax], 0x2d
mov dword [ebp - 4], ecx
mov eax, dword [esi + 4]
add ecx, ecx
lea edi, [ebp + ecx*8 - 0x2840]
mov dword [edi], eax
mov edx, dword [esi + 4]
mov al, byte [edx + 0x17]
test al, al
jne 0x42fbff
mov eax, dword [edx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42fc1d
xor eax, eax
cmp dword [0x4d9878], eax
je 0x42fc1f
mov dword [ebp + ecx*8 - 0x2838], 4
jmp 0x42fcc0
xor eax, eax
mov edx, dword [edx + 0x10]
cmp edx, 0x44e0c0
jne 0x42fc79
mov dword [ebp + ecx*8 - 0x2838], 1
mov ecx, dword [esi]
movzx esi, word [ecx]
test esi, 0xffffff80
jne 0x42fc54
push 2
push esi
call fcn.0049b90c
add esp, 8
test eax, eax
je 0x42fc54
and esi, 0xffffffdf
cmp si, 0x54
jne 0x42fc6b
mov esi, dword [ebp - 0x1c]
mov eax, 1
xor ecx, ecx
mov dword [edi], eax
mov dword [edi + 4], ecx
jmp 0x42fcc7
mov esi, dword [ebp - 0x1c]
xor eax, eax
xor ecx, ecx
mov dword [edi], eax
mov dword [edi + 4], ecx
jmp 0x42fcc7
cmp edx, 0x44ed80
jne 0x42fc97
mov dword [ebp + ecx*8 - 0x2838], 1
mov dword [edi], 4
mov dword [edi + 4], eax
jmp 0x42fcc7
cmp edx, 0x44eb70
jne 0x42fcb5
mov dword [ebp + ecx*8 - 0x2838], 1
mov dword [edi], 1
mov dword [edi + 4], eax
jmp 0x42fcc7
mov dword [ebp + ecx*8 - 0x2838], 7
mov dword [ebp + ecx*8 - 0x283c], eax
movzx edx, word [esi + 0xa]
mov eax, dword [ebp - 0xc]
mov esi, dword [ebp - 0x28]
lea ecx, [eax + edx*2]
mov edx, dword [ebp - 4]
mov dword [ebp - 0xc], ecx
add esi, 0xc
inc edx
mov dword [ebp - 0x28], esi
mov dword [ebp - 4], edx
mov eax, esi
mov ecx, edx
jmp 0x42e7f7
push 0x4b0cf8
push 0
push 0x4b3980
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b9570
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b7594
jmp 0x430810
push edi
push 0
push 0x4b95c0
jmp 0x430810
add ebx, 0xfffffffe
push ebx
push 0
push 0x4b76d8
jmp 0x430810
mov edx, dword [ebp - 0x14]
push edx
push 0
push 0x4b76d8
jmp 0x430810
cmp ecx, 0x1ff
jg 0x430804
add ecx, ecx
lea eax, [ebp - 0x38]
mov dword [ebp + ecx*8 - 0x2838], 0x44
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x840], eax
mov edx, 1
lea esi, [ebp - 0x2840]
mov dword [ebp - 8], 0
mov dword [ebp - 4], edx
jmp 0x42fd90
mov ecx, dword [ebp - 0x10]
mov edi, dword [esi + 8]
lea eax, [ebp + ecx*4 - 0x3040]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + edx*4 - 0x844]
mov ebx, dword [eax + 8]
cmp edi, 8
jge 0x42fe21
cmp edi, 7
jne 0x42fe08
cmp dword [esi + 4], 0
jne 0x42fe08
mov eax, dword [esi]
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x42fdc9
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x42fde0
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x42fddb
mov eax, dword [eax + 0xc]
mov cl, byte [eax + 0x17]
cmp cl, 2
jne 0x42fe08
mov eax, dword [esi + 0x18]
cmp eax, 0x1f
jg 0x42fded
cmp eax, 0x13
jge 0x42fe01
cmp eax, 9
je 0x42fe01
cmp eax, 0xa
je 0x42fe01
cmp ebx, 0x3f
je 0x42fe01
cmp ebx, 0x40
jne 0x42fe08
mov dword [esi + 8], 4
mov eax, dword [ebp - 0x18]
mov dword [eax], esi
mov ecx, dword [eax]
add esi, 0x10
inc dword [ebp - 0x10]
mov dword [ecx + 0xc], 0
jmp 0x42fd90
lea eax, [edi - 0xb]
cmp eax, 0x39
ja case.0x42fe34.19
movzx eax, byte [eax + 0x430908]
jmp dword [eax*4 + 0x4308e4]
cmp edi, 0x12
je 0x42fe7b
mov ecx, ebx
sub ecx, edi
cmp ecx, 3
je 0x42fe7b
cmp ebx, 8
je 0x42fe60
cmp ebx, 0x11
jg 0x43032b
cmp ebx, 0xf
jl 0x43032b
cmp edi, 0xc
jne 0x4305cd
push 0x4b0cf8
mov eax, 0x4b9608
push 0
push eax
jmp 0x430810
cmp dword [ebp - 8], 0
je 0x43001c
lea eax, [ebx - 0xf]
cmp eax, 2
ja 0x43001c
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x1c], ecx
cmp edi, 0x12
je 0x42fea8
cmp dword [esi - 8], ebx
je 0x42ff58
test ecx, ecx
je 0x42fec7
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 9]
cmp eax, dword [ecx + 0x10]
jl 0x42fec7
cmp byte [ecx + 0x3e], 0
je 0x4305e9
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [esi - 8]
cmp eax, 0x12
je 0x42ffac
cmp eax, ebx
je 0x42ffac
test ecx, ecx
je 0x42ff42
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx + 8], 0x4517e0
jne 0x42ff23
mov eax, dword [ebp - 8]
cmp byte [eax + 9], 0
jne 0x42ff23
cmp dword [esi - 8], 0
jne 0x42ff23
cmp dword [esi - 0x18], 0xf
jne 0x42ff23
mov ecx, dword [esi - 0x10]
push 0
push ecx
call fcn.00451590
add esp, 8
test eax, eax
je 0x42ff20
cdq
mov dword [esi - 8], 1
mov dword [esi - 0x10], eax
mov dword [esi - 0xc], edx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 8], 0x455c00
jne 0x42ff42
cmp dword [esi - 8], 7
jne 0x42ff42
cmp dword [esi - 0xc], 0
jne 0x42ff42
mov dword [esi - 8], 4
mov eax, dword [ebp - 8]
inc byte [eax + 9]
mov al, byte [eax + 9]
cmp ebx, 0x11
jne 0x42ff58
test al, 1
jne 0x4305fb
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x43001c
cmp edi, 0xc
jne 0x430025
mov eax, dword [ebp - 8]
movzx edi, byte [eax + 9]
cmp edi, dword [ecx + 0x14]
jge 0x42ff82
cmp byte [eax + 8], 2
jne 0x43060c
mov eax, dword [ebp + edx*4 - 0x844]
mov ecx, dword [eax + 4]
mov eax, dword [ebp + edx*4 - 0x848]
dec edx
add esi, 0x10
cmp dword [eax + 8], 0x41
mov dword [ebp - 4], edx
mov dword [ebp - 8], ecx
jne 0x42fd90
jmp 0x43032b
xor ecx, ecx
cmp edi, 0x12
jne 0x42ffec
mov edi, dword [ebp - 0x10]
lea ebx, [ecx + 3]
lea esp, [esp]
mov dword [ebp + edi*4 - 0x3040], esi
mov eax, dword [ebp + edi*4 - 0x3040]
mov dword [eax + 8], ebx
mov dword [eax], 0x4b0cf8
add esi, 0x10
mov dword [eax + 0xc], 0
inc ecx
inc edi
cmp dword [esi + 8], 0x12
je 0x42ffc0
mov dword [ebp - 0x10], edi
mov eax, dword [esi + 8]
cmp eax, 0xe
jg 0x42fffd
cmp eax, 0xc
jge 0x43061e
mov edi, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
test edi, edi
je 0x430014
movzx ebx, byte [eax + 9]
cmp ebx, dword [edi + 0x14]
jl 0x43061e
add byte [eax + 9], cl
jmp 0x42fd90
cmp edi, 0xc
je 0x42ff82
jle 0x4300c4
cmp edi, 0xe
jg 0x4300c4
mov ecx, dword [ebp + edx*4 - 0x844]
mov dword [ecx + 8], 0x41
mov eax, dword [esi + 4]
cmp word [eax + 2], 0x28
jne 0x4300b6
cmp edi, 0xe
je 0x430630
mov edi, dword [ebp - 8]
cmp dword [edi + 4], 0x4d6d40
jne 0x430630
mov al, byte [edi + 9]
cmp al, 2
ja 0x430630
cmp al, 1
jne 0x430094
mov eax, dword [ebp - 0x18]
inc dword [ebp - 0x10]
mov byte [edi + 9], 2
mov dword [esi + 8], 3
mov dword [esi], 0x4b0cf8
mov dword [eax], esi
mov dword [esi + 0xc], 0
mov eax, dword [ecx]
add esi, 0x10
mov dword [eax + 4], 0x4d6f40
mov ecx, dword [ecx + 4]
mov dword [ebp + edx*4 - 0x840], esi
mov dword [esi + 4], ecx
inc edx
add esi, 0x10
jmp 0x42fd88
mov edx, dword [ecx + 4]
add esi, 0x10
mov dword [ebp - 8], edx
jmp 0x43032b
mov al, byte [ebx + 0x4d70f0]
cmp al, byte [edi + 0x4d70f0]
jae 0x43032b
cmp dword [ebp - 8], 0
jne 0x430147
mov dword [ebp + edx*4 - 0x840], esi
inc edx
cmp dword [esi + 0x18], 0x44
lea eax, [esi + 0x10]
mov dword [ebp - 4], edx
je 0x430147
mov edi, 0x13
cmp dword [eax + 0x18], 0x25
jne 0x430147
mov ecx, dword [eax + 8]
cmp ecx, 4
je 0x43013b
cmp ecx, 7
jne 0x430147
cmp dword [eax + 4], 0
jne 0x430147
mov ecx, dword [eax]
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x43011d
mov edx, dword [ecx + 0xc]
mov dl, byte [edx + 0x17]
cmp dl, 1
je 0x430134
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x43012f
mov ecx, dword [ecx + 0xc]
mov dl, byte [ecx + 0x17]
cmp dl, 2
jne 0x430147
mov dword [eax + 8], 4
mov dword [eax + 0x18], edi
add eax, 0x20
cmp dword [eax + 8], 0x44
jne 0x4300f5
mov edx, dword [ebp - 4]
add esi, 0x10
jmp 0x42fd90
mov dword [ebp + edx*4 - 0x840], esi
inc edx
add esi, 0x10
mov ecx, dword [ebp - 8]
mov dword [esi + 4], ecx
cmp edi, 0x41
jne 0x43017e
mov eax, dword [esi - 0x10]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 8], eax
add esi, 0x10
jmp 0x42fd88
cmp ebx, 0x42
jne 0x4301a6
mov eax, dword [ebp + edx*4 - 0x844]
mov dword [eax + 8], 0x41
mov ecx, dword [eax]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 8], ecx
add esi, 0x10
jmp 0x42fd88
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 8], 0
add esi, 0x10
jmp 0x42fd88
mov eax, dword [ebp - 8]
mov ecx, dword [esi]
mov dword [ebp + edx*4 - 0x840], esi
mov dword [esi + 4], eax
inc edx
mov dword [ebp - 8], ecx
add esi, 0x10
jmp 0x42fd88
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [esi + 8], 0x41
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x43032b
cmp ebx, 8
je 0x430642
mov eax, dword [ebp - 8]
test eax, eax
je 0x430212
cmp ebx, 0x11
jne 0x430212
inc byte [eax + 9]
add esi, 0x10
jmp 0x42fd90
cmp ebx, 0xf
je 0x430653
cmp ebx, 0x10
je 0x430664
cmp ebx, 0x11
je 0x430675
cmp ebx, 0x21
jne 0x43032b
mov eax, dword [ebp + edx*4 - 0x844]
mov ecx, dword [ebp - 0x18]
inc dword [ebp - 0x10]
mov dword [eax + 0xc], esi
mov dword [ebp + edx*4 - 0x844], esi
mov dword [ecx], eax
add esi, 0x10
jmp 0x42fd88
cmp ebx, 8
je 0x430686
cmp ebx, 0xf
je 0x4307e8
cmp ebx, 0x10
je 0x4307f6
cmp ebx, 0x11
jne 0x43032b
push 0x4b0cf8
push 0
push 0x4b6aa4
jmp 0x430810
mov ecx, dword [ebp - 8]
test ecx, ecx
je case.0x42fe34.19
mov eax, dword [esi + 0x18]
cmp eax, 0xc
je 0x4302a0
cmp eax, 0xd
jne case.0x42fe34.19
mov byte [ecx + 8], 2
add esi, 0x10
jmp 0x42fd90
cmp edi, 0x1f
jg 0x4302b6
cmp edi, 0x13
jge 0x4302c0
cmp edi, 9
je 0x4302c0
cmp edi, 0xa
jne 0x4302d7
lea eax, [ebp - 0x2840]
cmp esi, eax
jbe 0x4302d7
cmp dword [esi - 8], 4
jne 0x4302d7
mov dword [esi - 0xc], 1
movzx eax, byte [edi + 0x4d70f0]
mov ecx, eax
and ecx, 0x80000001
jns 0x4302ed
dec ecx
or ecx, 0xfffffffe
inc ecx
add ecx, eax
movzx eax, byte [ebx + 0x4d70f0]
cmp eax, ecx
jl 0x4305a6
lea ecx, [edi - 0x13]
cmp ecx, 0xc
ja 0x43030f
cmp ebx, 0x3d
jne 0x4305a6
cmp ebx, 0x3e
jne 0x43032b
cmp edi, 0x39
jl 0x430322
cmp edi, 0x3d
jle 0x4305a6
cmp edi, 0x24
je 0x4305a6
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + eax*4 - 0x844]
mov ecx, dword [ebp - 0x18]
dec eax
xor edx, edx
mov dword [ebx + 0xc], edx
mov edi, dword [ebx + 8]
mov dword [ebp - 4], eax
lea eax, [edi - 0x3f]
mov dword [ecx], ebx
cmp eax, 4
ja case.default.0x430352
jmp dword [eax*4 + 0x430944]
mov edi, dword [ebx]
mov ecx, dword [edi + 4]
mov eax, dword [esi + 8]
cmp ecx, 0x4d6d40
je 0x430375
cmp ecx, 0x4d6f40
jne 0x43059b
lea ecx, [eax - 0x13]
cmp ecx, 0xc
ja 0x43043f
cmp eax, 0x13
je 0x430421
movzx edi, byte [edi + 9]
cmp edi, 2
je 0x4303c7
mov eax, 0x10
call fcn.004a7dd0
mov edx, dword [ebp - 0x18]
mov ecx, esp
mov eax, edi
mov dword [edx], ecx
cdq
mov dword [ecx + 8], 1
mov dword [ecx], eax
mov eax, 1
add dword [ebp - 0x10], eax
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], 0
mov dword [ebp - 0x20], eax
jmp 0x4303ca
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x10]
lea ecx, [ebp + eax*4 - 0x3040]
mov eax, 0x10
mov dword [ebp - 0x28], ecx
call fcn.004a7dd0
mov edx, dword [ebp - 0x28]
mov edi, esp
mov eax, 0xc
mov dword [edx], edi
mov dword [edi + 8], 0x41
call fcn.0047cfc0
mov dword [edi], eax
test eax, eax
je 0x42fced
mov dword [eax + 4], 0x4d6dc0
mov ecx, dword [edi]
mov al, byte [ebp - 0x20]
mov byte [ecx + 8], 1
mov edx, dword [edi]
mov byte [edx + 9], al
mov dword [edi + 0xc], 0
jmp 0x430424
dec dword [ebp - 0x10]
mov ebx, dword [ebx]
mov edx, dword [ebp - 4]
mov dword [esi], ebx
mov dword [ebx + 4], 0x4d6d80
mov eax, dword [esi]
inc byte [eax + 9]
inc dword [ebp - 0x10]
jmp 0x42fd90
cmp eax, 8
jl 0x43059b
cmp eax, 9
je 0x430499
cmp eax, 0xa
je 0x4304af
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + ecx*4 - 0x844]
mov eax, dword [edx + 8]
cmp eax, 0x3f
je 0x430483
cmp eax, 0x40
jne 0x43059b
dec dword [ebp - 4]
inc dword [ebp - 0x10]
mov edx, dword [ebp - 4]
mov eax, 0x4d6e80
mov dword [edi + 4], eax
jmp 0x42fd90
dec dword [ebp - 4]
inc dword [ebp - 0x10]
mov edx, dword [ebp - 4]
mov eax, 0x4d6e40
mov dword [edi + 4], eax
jmp 0x42fd90
mov edx, dword [ebp - 4]
mov eax, 0x4d6ec0
add esi, 0x10
inc dword [ebp - 0x10]
mov dword [edi + 4], eax
jmp 0x42fd90
mov edx, dword [ebp - 4]
mov eax, 0x4d6f00
add esi, 0x10
inc dword [ebp - 0x10]
mov dword [edi + 4], eax
jmp 0x42fd90
cmp dword [ebp - 0x10], edx
je 0x43059b
mov ecx, dword [ecx - 4]
cmp dword [ecx + 8], 4
jne 0x43059b
inc dword [ebp - 0x10]
mov edx, dword [ebp - 4]
mov dword [ecx + 4], 1
jmp 0x42fd90
lea eax, [edi - 0x13]
cmp eax, 0xc
ja 0x43059b
cmp dword [ebx], edx
je 0x43059b
cmp edi, 0x13
je case.0x430352.66
lea eax, [edi - 0x14]
cmp eax, 0xb
ja case.default.0x430512
jmp dword [eax*4 + 0x430958]
mov edi, 0x34
jmp case.default.0x430512
mov edi, 0x35
jmp case.default.0x430512
mov edi, 0x36
jmp case.default.0x430512
mov edi, 0x37
jmp case.default.0x430512
mov edi, 0x38
jmp case.default.0x430512
mov edi, 0x2e
jmp case.default.0x430512
mov edi, 0x2f
jmp case.default.0x430512
mov edi, 0x30
jmp case.default.0x430512
mov edi, 0x31
jmp case.default.0x430512
mov edi, 0x32
jmp case.default.0x430512
mov edi, 0x33
jmp case.default.0x430512
mov edi, 0x2d
mov eax, 0x10
call fcn.004a7dd0
mov ecx, dword [ebp - 0x18]
mov eax, esp
mov dword [eax + 8], edi
mov dword [ecx], eax
mov dword [eax + 0xc], 0
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp + eax*4 - 0x3040], ebx
mov dword [ebx + 8], 0x41
inc dword [ebp - 0x10]
mov edx, dword [ebp - 4]
jmp 0x42fd90
add edi, 0xffffffdf
cmp edi, 2
ja 0x4305bd
cmp dword [ebp - 0x10], 0
je 0x4305bd
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax - 4]
mov dword [ecx + 0xc], esi
mov dword [ebp + edx*4 - 0x840], esi
inc edx
add esi, 0x10
jmp 0x42fd88
mov eax, 0x4b9628
cmp edi, 0xd
je 0x4305dc
mov eax, 0x4b9258
push 0x4b0cf8
push 0
push eax
jmp 0x430810
mov edx, dword [ebp - 8]
mov eax, dword [edx]
push eax
push 0
push 0x4b9648
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b9698
jmp 0x430810
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
push edx
push 0
push 0x4b4060
jmp 0x430810
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push ecx
push 0
push 0x4b8408
jmp 0x430810
mov edx, dword [ebp - 8]
mov eax, dword [edx]
push eax
push 0
push 0x4b96e0
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b9720
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b9754
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b9784
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b97b4
jmp 0x430810
mov esi, dword [ebp - 0x10]
shl esi, 4
lea eax, [esi + 0x10]
mov dword [ebp - 0x28], esi
call fcn.0047cfc0
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [edi + 0xc], eax
cmp eax, ebx
jne 0x4306b3
push 0x4b0cf8
push ebx
push 0x4b3980
jmp 0x430810
cmp dword [ebp - 0x10], ebx
jle 0x4307c9
mov dword [ebp - 0x20], ebx
nop
mov esi, dword [edi + 0xc]
add esi, dword [ebp - 0x20]
mov eax, dword [ebp + ebx*4 - 0x3040]
mov ecx, dword [eax]
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0xc], edx
cmp dword [esi + 8], 5
jne 0x430792
mov eax, dword [esi]
push 0
push 1
push 0
push 1
call fcn.0047fe10
add esp, 0x10
cmp eax, 1
je 0x430710
mov dword [esi + 4], 0
jmp 0x430792
cmp dword [0x4da650], 0
jne 0x430727
call fcn.0047d030
mov dword [0x4da650], eax
test eax, eax
je 0x430757
mov ecx, dword [0x4da654]
cmp dword [ecx + 8], 8
jae 0x430745
call fcn.0047d030
mov ecx, dword [0x4da654]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x430757
mov eax, dword [ecx + 4]
add dword [ecx + 8], 0xfffffff8
lea edx, [eax + 8]
mov dword [0x4da658], eax
mov dword [ecx + 4], edx
mov dword [esi + 4], eax
test eax, eax
je 0x42fced
mov edi, dword [esi]
mov eax, edi
call fcn.00404010
test al, al
je 0x43077e
push 0x10
push 0
push edi
call fcn.0049a060
add esp, 0xc
jmp 0x430787
push edi
call fcn.0049a0d8
add esp, 4
mov ecx, dword [esi + 4]
mov edi, dword [ebp + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x4307b8
lea eax, [ebx + 1]
cmp dword [ebp + ebx*4 - 0x303c], ecx
je 0x4307af
inc eax
cmp dword [ebp + eax*4 - 0x3040], ecx
jne 0x4307a5
shl eax, 4
add eax, dword [edi + 0xc]
mov dword [esi + 0xc], eax
add dword [ebp - 0x20], 0x10
inc ebx
cmp ebx, dword [ebp - 0x10]
jl 0x4306c0
mov esi, dword [ebp - 0x28]
mov eax, dword [edi + 0xc]
mov dword [eax + esi + 8], 0x44
mov eax, 1
lea esp, [ebp - 0x3050]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push 0x4b0cf8
push 0
push 0x4b6600
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b873c
jmp 0x430810
push 0x4b0cf8
push 0
push 0x4b953c
mov ecx, dword [ebp + 8]
call fcn.0043a140
lea esp, [ebp - 0x3050]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8