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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x34
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x4c]
mov edx, 0xc
test edi, edi
mov eax, 0xf900000e
je case.0x7922ab.13
test esi, esi
je case.0x7922ab.13
mov eax, 0xfa000004
cmp byte [edi + 0x1f], 0
js case.0x792270.6
mov al, byte [esp + 0x48]
mov cl, 4
movzx ecx, cl
cmp ecx, 4
je 0x792241
cmp ecx, 0x38
jne 0x792277
movzx edx, al
mov ebx, 0xffffffff
mov eax, 0xf9000016
cmp edx, 0xd
ja case.default.0x79223a
mov ecx, 0x15
mov dword [esp + 0x20], 0x10
mov dword [esp + 0x1c], 0xf
mov byte [esp + 0x2c], 0x73
mov byte [esp + 0x30], 0x3b
mov byte [esp + 0x28], 0x35
mov byte [esp + 0x24], 0x70
jmp dword [edx*4 + 0x7eca00]
movzx ecx, al
mov eax, 0xf9000016
cmp ecx, 0xd
ja case.default.0x792270
mov edx, 0xa
mov byte [esp + 0x2c], 0x73
mov byte [esp + 0x30], 0x3b
mov byte [esp + 0x28], 0x35
mov byte [esp + 0x24], 0x70
mov ebx, 0xffffffff
jmp dword [ecx*4 + 0x7ec9c8]
movzx ecx, al
mov eax, 0xf9000016
cmp ecx, 0xd
ja case.default.0x7922ab
mov ebp, 0x10
mov edx, 0x18
mov byte [esp + 0x2c], 0x73
mov byte [esp + 0x30], 0x3b
mov byte [esp + 0x28], 0x35
mov byte [esp + 0x24], 0x70
mov ebx, 0xffffffff
jmp dword [ecx*4 + 0x7eca38]
movzx eax, byte [esp + 0x2c]
cmp eax, 0x44
jne 0x792525
mov ebx, 0xd
mov al, byte [edi + 0x20]
mov byte [esi + 0x8c], al
mov al, byte [edi + 0x21]
mov byte [esi + 0x8d], al
mov al, byte [edi + 0x22]
mov byte [esi + 0x8e], al
mov al, byte [edi + 0x23]
mov byte [esi + 0x8f], al
mov al, byte [edi + 0x24]
mov byte [esi + 0x90], al
mov al, byte [edi + 0x25]
mov byte [esi + 0x91], al
mov al, byte [edi + 0x26]
mov byte [esi + 0x92], al
mov al, byte [edi + 0x27]
mov byte [esi + 0x93], al
mov al, byte [edi + 0x28]
mov byte [esi + 0x94], al
mov al, byte [edi + 0x29]
mov byte [esi + 0x95], al
mov al, byte [edi + 0x2a]
mov byte [esi + 0x96], al
mov al, byte [edi + 0x2b]
mov byte [esi + 0x97], al
mov al, byte [edi + 0x2c]
mov byte [esi + 0x98], al
mov al, byte [edi + 0x2d]
mov byte [esi + 0x99], al
mov al, byte [edi + 0x2e]
mov byte [esi + 0x9a], al
mov al, byte [edi + 0x2f]
mov byte [esi + 0x9b], al
mov al, byte [edi + 0x30]
mov byte [esi + 0x9c], al
mov al, byte [edi + 0x31]
mov byte [esi + 0x9d], al
mov al, byte [edi + 0x32]
mov byte [esi + 0x9e], al
mov al, byte [edi + 0x33]
mov byte [esi + 0x9f], al
mov al, byte [edi + 0x34]
mov byte [esi + 0xa0], al
mov al, byte [edi + 0x35]
mov byte [esi + 0xa1], al
mov al, byte [edi + 0x36]
mov byte [esi + 0xa2], al
mov al, byte [edi + 0x37]
mov byte [esi + 0xa3], al
mov al, byte [edi + 0x38]
mov byte [esi + 0xa4], al
mov al, byte [edi + 0x39]
mov byte [esi + 0xa5], al
mov al, byte [edi + 0x3a]
mov byte [esi + 0xa6], al
mov al, byte [edi + 0x3b]
mov byte [esi + 0xa7], al
mov al, byte [edi + 0x3c]
mov byte [esi + 0xa8], al
mov al, byte [edi + 0x3d]
mov byte [esi + 0xa9], al
mov al, byte [edi + 0x3e]
mov byte [esi + 0xaa], al
mov al, byte [edi + 0x3f]
mov byte [esi + 0xab], al
mov al, byte [edi + 0x40]
mov byte [esi + 0xac], al
mov al, byte [edi + 0x41]
mov byte [esi + 0xad], al
mov al, byte [edi + 0x42]
mov byte [esi + 0xae], al
mov al, byte [edi + 0x43]
mov byte [esi + 0xaf], al
lea eax, [edi + 0x44]
lea ecx, [esi + 0xb0]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x20
call fcn.007c51d0
xor eax, eax
jmp 0x79252f
mov al, byte [edi + 0x20]
mov byte [esi + 0x48], al
mov ax, word [edi + 0x21]
mov word [esi + 0x4a], ax
mov ax, word [edi + 0x23]
mov word [esi + 0x4c], ax
mov al, byte [edi + 0x25]
mov byte [esi + 0x4e], al
mov al, byte [edi + 0x26]
mov byte [esi + 0x4f], al
mov ax, word [edi + 0x27]
mov word [esi + 0x50], ax
mov ax, word [edi + 0x29]
mov word [esi + 0x52], ax
mov ax, word [edi + 0x2b]
mov word [esi + 0x54], ax
xor eax, eax
add ebx, 1
jb 0x792430
jmp case.0x792270.6
mov ebp, 0xa3
add ebp, 0xffffff60
mov al, byte [edi + 0x20]
mov byte [esi + 0xd0], al
mov al, byte [edi + 0x21]
mov byte [esi + 0xd1], al
mov al, byte [edi + 0x22]
mov byte [esi + 0xd5], al
mov al, byte [edi + 0x23]
mov byte [esi + 0xd2], al
mov al, byte [edi + 0x24]
mov byte [esi + 0xd6], al
mov al, byte [edi + 0x25]
mov byte [esi + 0xd3], al
mov al, byte [edi + 0x26]
mov byte [esi + 0xd7], al
mov al, byte [edi + 0x27]
mov byte [esi + 0xd4], al
mov al, byte [edi + 0x28]
mov byte [esi + 0xd8], al
xor eax, eax
add ebx, 1
jb 0x792480
mov ebx, 0xffffffff
cmp ebp, 3
je case.0x792270.6
jmp case.0x792270.0
mov al, byte [edi + 0x20]
mov byte [esi], al
mov al, byte [edi + 0x21]
mov byte [esi + 1], al
xor eax, eax
add ebx, 1
jb 0x792500
jmp case.0x792270.6
cmp edx, 0xc
je case.0x792270.6
jmp case.0x79223a.13
mov ebx, 0x13
mov eax, 0xf9000016
cmp ebx, 0xd
je case.0x792270.6
mov al, byte [edi + 0x20]
mov byte [esi + 0x8c], al
mov al, byte [edi + 0x21]
mov byte [esi + 0x8d], al
mov al, byte [edi + 0x22]
mov byte [esi + 0x8e], al
mov al, byte [edi + 0x23]
mov byte [esi + 0x8f], al
mov al, byte [edi + 0x24]
mov byte [esi + 0x90], al
mov al, byte [edi + 0x25]
mov byte [esi + 0x91], al
mov al, byte [edi + 0x26]
mov byte [esi + 0x92], al
mov al, byte [edi + 0x27]
mov byte [esi + 0x93], al
mov al, byte [edi + 0x28]
mov byte [esi + 0x94], al
mov al, byte [edi + 0x29]
mov byte [esi + 0x95], al
mov al, byte [edi + 0x2a]
mov byte [esi + 0x96], al
mov al, byte [edi + 0x2b]
mov byte [esi + 0x97], al
mov al, byte [edi + 0x2c]
mov byte [esi + 0x98], al
mov al, byte [edi + 0x2d]
mov byte [esi + 0x99], al
mov al, byte [edi + 0x2e]
mov byte [esi + 0x9a], al
mov al, byte [edi + 0x2f]
mov byte [esi + 0x9b], al
mov al, byte [edi + 0x30]
mov byte [esi + 0x9c], al
mov al, byte [edi + 0x31]
mov byte [esi + 0x9d], al
mov al, byte [edi + 0x32]
mov byte [esi + 0x9e], al
mov al, byte [edi + 0x33]
mov byte [esi + 0x9f], al
mov al, byte [edi + 0x34]
mov byte [esi + 0xa0], al
mov al, byte [edi + 0x35]
mov byte [esi + 0xa1], al
mov al, byte [edi + 0x36]
mov byte [esi + 0xa2], al
mov al, byte [edi + 0x37]
mov byte [esi + 0xa3], al
mov al, byte [edi + 0x38]
mov byte [esi + 0xa4], al
mov al, byte [edi + 0x39]
mov byte [esi + 0xa5], al
mov al, byte [edi + 0x3a]
mov byte [esi + 0xa6], al
mov al, byte [edi + 0x3b]
mov byte [esi + 0xa7], al
mov al, byte [edi + 0x3c]
mov byte [esi + 0xa8], al
mov al, byte [edi + 0x3d]
mov byte [esi + 0xa9], al
mov al, byte [edi + 0x3e]
mov byte [esi + 0xaa], al
mov al, byte [edi + 0x3f]
mov byte [esi + 0xab], al
mov al, byte [edi + 0x40]
mov byte [esi + 0xac], al
mov al, byte [edi + 0x41]
mov byte [esi + 0xad], al
mov al, byte [edi + 0x42]
mov byte [esi + 0xae], al
mov al, byte [edi + 0x43]
mov byte [esi + 0xaf], al
add edi, 0x44
add esi, 0xb0
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], 0x20
jmp 0x792720
cmp edx, 0x22
je 0x792a21
jmp case.0x792270.6
mov ebp, 0x12
cmp ecx, 0x22
je 0x792f6e
jmp case.0x792270.6
mov ebp, 0xf
cmp ecx, 0x22
je 0x792a2f
add esp, 0x34
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [edi + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x78], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x80], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x84], eax
mov al, byte [edi + 0x38]
mov byte [esi + 0x88], al
mov al, byte [edi + 0x39]
mov byte [esi + 0x89], al
mov ax, word [edi + 0x3a]
mov word [esi + 0x8a], ax
xor eax, eax
add ecx, 1
jb 0x7926d0
jmp case.0x792270.6
call fcn.007c51d0
xor eax, eax
jmp case.0x792270.6
mov al, byte [edi + 0x20]
mov byte [esi + 0x108], al
movzx eax, byte [edi + 0x21]
shl eax, 0x18
movzx ecx, byte [edi + 0x22]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [edi + 0x23]
shl eax, 8
or eax, ecx
movzx ecx, byte [edi + 0x24]
or ecx, eax
mov dword [esi + 0x10c], ecx
lea eax, [edi + 0x25]
lea ecx, [esi + 0x110]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [edi + 0x27]
lea ecx, [esi + 0x112]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x2a]
lea ecx, [esi + 0x115]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
lea eax, [edi + 0x32]
lea ecx, [esi + 0x11d]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
lea eax, [edi + 0x3a]
lea ecx, [esi + 0x125]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x3e]
lea ecx, [esi + 0x129]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
movzx eax, byte [edi + 0x42]
shl eax, 0x18
movzx ecx, byte [edi + 0x43]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [edi + 0x44]
shl eax, 8
or eax, ecx
movzx ecx, byte [edi + 0x45]
or ecx, eax
mov dword [esi + 0x130], ecx
lea eax, [edi + 0x46]
lea ecx, [esi + 0x134]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [edi + 0x48]
lea ecx, [esi + 0x136]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x4b]
lea ecx, [esi + 0x139]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x4e]
lea ecx, [esi + 0x13c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
lea eax, [edi + 0x56]
lea ecx, [esi + 0x144]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
movzx eax, byte [edi + 0x5e]
mov byte [esi + 0x14c], al
lea ecx, [edi + 0x5f]
lea edx, [esi + 0x14d]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.007c51d0
movzx ebp, byte [esi + 0x14c]
lea eax, [ebp + edi + 0x5f]
lea ecx, [esi + 0x16d]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [ebp + edi + 0x63]
lea ecx, [esi + 0x171]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
movzx eax, byte [ebp + edi + 0x67]
shl eax, 0x18
movzx ecx, byte [ebp + edi + 0x68]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [ebp + edi + 0x69]
shl eax, 8
or eax, ecx
movzx ecx, byte [ebp + edi + 0x6a]
or ecx, eax
mov dword [esi + 0x178], ecx
lea eax, [ebp + edi + 0x6b]
lea ecx, [esi + 0x17c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [ebp + edi + 0x6d]
lea ecx, [esi + 0x17e]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [ebp + edi + 0x70]
lea ecx, [esi + 0x181]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
lea eax, [ebp + edi + 0x78]
lea ecx, [esi + 0x189]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 8
call fcn.007c51d0
movzx eax, byte [ebp + edi + 0x80]
mov byte [esi + 0x191], al
add eax, eax
lea ecx, [edi + ebp + 0x81]
lea edx, [esi + 0x192]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.007c51d0
movzx eax, byte [esi + 0x191]
lea eax, [ebp + eax*2 + 0x61]
lea eax, [edi + eax + 0x20]
lea ecx, [esi + 0x252]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x13
call fcn.007c51d0
xor eax, eax
add ebx, 1
jb 0x792730
jmp case.0x792270.6
mov ebx, 0xffffffff
cmp ebp, 9
je case.0x792270.6
jmp 0x792a21
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov dword [esp + 8], 3
call fcn.007c51d0
mov al, byte [edi + 0x23]
mov byte [esi + 7], al
mov al, byte [edi + 0x24]
mov byte [esi + 8], al
mov al, byte [edi + 0x25]
mov byte [esi + 9], al
mov ax, word [edi + 0x26]
mov word [esi + 0xa], ax
mov al, byte [edi + 0x28]
mov byte [esi + 0xc], al
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [edi + 0x2d]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x31]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 8], 3
call fcn.007c51d0
mov eax, dword [esp + 0x10]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 8], 3
call fcn.007c51d0
mov al, byte [edi + 0x3b]
mov byte [esi + 0x22], al
mov eax, dword [edi + 0x3c]
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0x40]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x44]
mov dword [esi + 0x2c], eax
lea eax, [esi + 0x30]
mov dword [esp + 4], ebp
mov dword [esp], eax
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x4b]
lea ecx, [esi + 0x33]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x10
call fcn.007c51d0
lea eax, [edi + 0x5b]
lea ecx, [esi + 0x43]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
xor eax, eax
add ebx, 1
jb 0x792a40
jmp case.0x792270.6
movzx eax, byte [esp + 0x24]
cmp eax, 0x44
je 0x792e05
mov edx, 4
cmp eax, 0x70
je 0x792b8c
cmp edx, 4
jne case.0x79223a.13
lea eax, [edi + 0x20]
lea ecx, [esi + 4]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
mov al, byte [edi + 0x23]
mov byte [esi + 7], al
mov al, byte [edi + 0x24]
mov byte [esi + 8], al
mov al, byte [edi + 0x25]
mov byte [esi + 9], al
mov ax, word [edi + 0x26]
mov word [esi + 0xa], ax
mov al, byte [edi + 0x28]
mov byte [esi + 0xc], al
lea eax, [edi + 0x29]
lea ecx, [esi + 0xd]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [edi + 0x2b]
lea ecx, [esi + 0xf]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [edi + 0x2d]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x31]
mov dword [esi + 0x18], eax
lea eax, [edi + 0x35]
lea ecx, [esi + 0x1c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x38]
lea ecx, [esi + 0x1f]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
mov al, byte [edi + 0x3b]
mov byte [esi + 0x22], al
mov eax, dword [edi + 0x3c]
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0x40]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x44]
mov dword [esi + 0x2c], eax
lea eax, [edi + 0x48]
lea ecx, [esi + 0x30]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x4b]
lea ecx, [esi + 0x33]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x10
call fcn.007c51d0
add edi, 0x5b
add esi, 0x43
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], 2
jmp 0x792720
mov al, byte [edi + 0x20]
mov byte [esi + 0xd9], al
lea eax, [edi + 0x21]
lea ecx, [esi + 0xda]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x25]
lea ecx, [esi + 0xde]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [edi + 0x27]
lea ecx, [esi + 0xe0]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x2a]
lea ecx, [esi + 0xe3]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x2d]
lea ecx, [esi + 0xe6]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x31]
lea ecx, [esi + 0xea]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x35]
lea ecx, [esi + 0xee]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x39]
lea ecx, [esi + 0xf2]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
lea eax, [edi + 0x3b]
lea ecx, [esi + 0xf4]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 3
call fcn.007c51d0
lea eax, [edi + 0x3e]
lea ecx, [esi + 0xf7]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
lea eax, [edi + 0x42]
lea ecx, [esi + 0xfb]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
add edi, 0x46
add esi, 0xff
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], 8
jmp 0x792720
mov ebx, 0xffffffff
lea eax, [edi + 0x20]
mov dword [esp + 0x30], eax
lea eax, [esi + 4]
mov dword [esp + 0x2c], eax
lea eax, [edi + 0x29]
mov dword [esp + 0x28], eax
lea eax, [esi + 0xd]
mov dword [esp + 0x24], eax
lea eax, [edi + 0x2b]
mov dword [esp + 0x20], eax
lea eax, [esi + 0xf]
mov dword [esp + 0x1c], eax
lea eax, [edi + 0x35]
mov dword [esp + 0x18], eax
lea eax, [esi + 0x1c]
mov dword [esp + 0x14], eax
lea eax, [edi + 0x38]
mov dword [esp + 0x10], eax
lea eax, [esi + 0x1f]
mov dword [esp + 0xc], eax
lea ebp, [edi + 0x48]
jmp 0x792b5b
mov al, byte [edi + 0x20]
mov byte [esi + 0x58], al
lea eax, [edi + 0x21]
lea ecx, [esi + 0x59]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [edi + 0x23]
mov dword [esi + 0x5c], eax
mov eax, dword [edi + 0x27]
mov dword [esi + 0x60], eax
mov ax, word [edi + 0x2b]
mov word [esi + 0x64], ax
mov eax, dword [edi + 0x2d]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x31]
mov dword [esi + 0x6c], eax
xor eax, eax
jmp case.0x792270.6
mov al, byte [edi + 0x20]
mov byte [esi + 0x58], al
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], ebp
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [edi + 0x23]
mov dword [esi + 0x5c], eax
mov eax, dword [edi + 0x27]
mov dword [esi + 0x60], eax
mov ax, word [edi + 0x2b]
mov word [esi + 0x64], ax
mov eax, dword [edi + 0x2d]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x31]
mov dword [esi + 0x6c], eax
xor eax, eax
add ebx, 1
jb 0x792ea0
mov ecx, dword [esp + 0x2c]
cmp ecx, 7
je case.0x792270.6
jmp case.0x792270.1
movzx eax, byte [esp + 0x28]
cmp eax, 0xa
je 0x792f27
cmp eax, 0x35
je 0x792e58
mov ebx, 0xffffffff
mov eax, 0x82
add eax, 0xffffff85
mov dword [esp + 0x2c], eax
lea eax, [edi + 0x21]
mov dword [esp + 0x30], eax
lea ebp, [esi + 0x59]
jmp 0x792ede
mov ebp, 0xf
mov al, byte [edi + 0x20]
mov byte [esi + 0x58], al
lea eax, [edi + 0x21]
lea ecx, [esi + 0x59]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.007c51d0
mov eax, dword [edi + 0x23]
mov dword [esi + 0x5c], eax
mov eax, dword [edi + 0x27]
mov dword [esi + 0x60], eax
mov ax, word [edi + 0x2b]
mov word [esi + 0x64], ax
mov eax, dword [edi + 0x2d]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x31]
mov dword [esi + 0x6c], eax
xor eax, eax
mov ebx, 0xffffffff
cmp ebp, 0xf
je case.0x792270.6
jmp 0x792a21
mov eax, dword [edi + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x78], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x80], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x84], eax
mov al, byte [edi + 0x38]
mov byte [esi + 0x88], al
mov al, byte [edi + 0x39]
mov byte [esi + 0x89], al
mov ax, word [edi + 0x3a]
mov word [esi + 0x8a], ax
xor eax, eax
add edx, 1
jb 0x792f81
jmp 0x792a2f
mov eax, dword [edi + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x78], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x80], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x84], eax
mov al, byte [edi + 0x38]
mov byte [esi + 0x88], al
mov al, byte [edi + 0x39]
mov byte [esi + 0x89], al
mov ax, word [edi + 0x3a]
mov word [esi + 0x8a], ax
xor eax, eax
add ecx, 1
jb 0x792fe0
jmp case.0x792270.6
mov dl, byte [esp + 0x30]
movsx eax, dl
cmp eax, 0x4e
mov al, dl
movzx eax, al
jg 0x793064
cmp eax, 0x3b
je 0x793087
cmp eax, 0x48
jne 0x7930ed
mov edx, 0xffffffff
mov ebp, 0x71
xor ebp, 0x78
jmp 0x792fc8
cmp eax, 0x4f
je 0x79313b
mov ebp, 0x1b
cmp eax, 0x5c
jne 0x7930ed
cmp ebp, 0x10
je case.0x792270.1
mov ecx, 0xffffffff
jmp 0x793027
mov dword [esp + 0x1c], 0xa
mov byte [esp + 0x30], 0x3b
mov eax, dword [edi + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x78], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x80], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x84], eax
mov al, byte [edi + 0x38]
mov byte [esi + 0x88], al
mov al, byte [edi + 0x39]
mov byte [esi + 0x89], al
mov ax, word [edi + 0x3a]
mov word [esi + 0x8a], ax
xor eax, eax
cmp dword [esp + 0x1c], 0xa
je case.0x792270.6
jmp case.0x792270.4
mov eax, dword [edi + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x78], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x80], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x84], eax
mov al, byte [edi + 0x38]
mov byte [esi + 0x88], al
mov al, byte [edi + 0x39]
mov byte [esi + 0x89], al
mov ax, word [edi + 0x3a]
mov word [esi + 0x8a], ax
xor eax, eax
jmp case.0x792270.6
mov dword [esp + 0x20], 3
cmp dword [esp + 0x20], 3
jne case.0x792270.3
mov ecx, 0xffffffff
jmp 0x792717