Function at 0x10047420
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x58
mov eax, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov eax, dword [0x10290680]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x10]
and eax, 0xffffffdf
mov dword [ebp + 0x10], eax
cmp dword [ebp + 0xc], 0x7fffffff
jbe 0x1004753f
mov eax, dword [0x10282224]
mov esi, dword [str._BSV]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, esi
and edx, ecx
mov edi, esi
xor edi, 0xffffffff
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x32b92969
mov esi, 0xffffffff
xor esi, 0x32b92969
mov ecx, eax
and ecx, esi
imul ecx, edx
mov edx, eax
and edx, 0x32b92969
or eax, 0x32b92969
imul eax, edx
add eax, ecx
or eax, 0x1f1e62bc
mov ecx, eax
and ecx, 0x8312b85c
xor ecx, 0xffffffff
add eax, 0x8312b85c
add eax, 1
add eax, ecx
cmp eax, 0xe85dff26
jae 0x10047f27
mov eax, dword [0x1028222c]
mov esi, dword [0x10282230]
mov edi, esi
xor edi, 0xffffffff
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
imul ecx, eax, 0x12577862
mov edx, 0xffffffff
xor edx, 0x66b11d7
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0x62e12a76
add eax, 0xab9f0699
sub eax, 0x62e12a76
mov dword [ebp - 0x24], eax
call fcn.100bb62d
mov eax, dword [ebp - 0x24]
cmp eax, 0x649dec4b
je 0x10047f27
mov eax, dword [0x10282234]
mov esi, dword [0x10282238]
mov edi, esi
xor edi, 0xffffffff
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
mov ecx, 0xf27423ff
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x64902250
mov edx, 0xffffffff
xor edx, 0x64902250
and ecx, edx
or eax, ecx
sub eax, 0xc7a835a6
sub eax, 0xea89c1b4
add eax, 0xc7a835a6
cmp eax, 0xd2ea4b87
jae 0x10047f31
mov eax, dword [0x1028223c]
or eax, dword [0x10282240]
xor eax, 0x8f7b6214
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xe67a37b4
mov edx, 0xffffffff
xor edx, 0xe67a37b4
and eax, edx
sub eax, ecx
and eax, 0xa3537326
cmp dword [ebp + 0xc], 0
setne cl
mov byte [ebp - 0x25], cl
cmp eax, 0x52c09286
je 0x100475a6
mov al, byte [ebp - 0x25]
test al, 1
jne 0x100475fa
jmp 0x10047dbc
mov ecx, dword [0x10282244]
mov edx, dword [0x10282248]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
sub eax, 0xdafdcfa
sub eax, 0x7bb1ca26
add eax, 0x466bd5d7
add eax, 0x7bb1ca26
mov ecx, 0xffffffff
xor ecx, 0xce27f94e
add eax, ecx
add eax, 1
cmp eax, 0x30233081
ja 0x10047f36
mov ecx, dword [0x1028224c]
mov esi, dword [0x10282250]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, esi
xor edx, 0xffffffff
or eax, edx
mov edx, esi
xor edx, 0xffffffff
xor esi, 0xffffffff
or edx, esi
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0xdf115689
mov esi, 0xffffffff
xor esi, 0xdf115689
mov ecx, eax
and ecx, esi
imul ecx, edx
mov edx, eax
and edx, 0xdf115689
or eax, 0xdf115689
imul eax, edx
add eax, ecx
mov edx, 0xffffffff
xor edx, 0x25b85fd9
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x25b85fd9
add eax, edx
sub eax, ecx
mov esi, 0xffffffff
xor esi, 0x674a40a7
mov edx, eax
and edx, esi
mov ecx, eax
or ecx, esi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x674a40a7
or eax, 0x674a40a7
imul eax, edx
add eax, ecx
mov ecx, dword [ebp + 0x10]
and ecx, 6
cmp ecx, 6
setne cl
mov byte [ebp - 0x26], cl
cmp eax, 0xb53c6e85
jae 0x1004763d
mov al, byte [ebp - 0x26]
test al, 1
jne 0x1004770d
jmp 0x10047dbc
mov ecx, dword [0x10282254]
mov edx, dword [0x10282258]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xe743ba5f
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x49fc27dc
add eax, ecx
imul eax, eax, 0x18bb4e0
cmp eax, 0x20d50d56
je 0x10047f3b
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1028225c]
or eax, dword [0x10282260]
xor eax, 0xffffffff
mov esi, 0xffffffff
xor esi, 0xd7c22274
mov edx, 0xffffffff
xor edx, 0x228bcffe
or eax, esi
or edx, 0x228bcffe
xor eax, 0xffffffff
and eax, edx
or eax, 0x13b0010b
and eax, 0x86997f8
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
add ecx, 0x40
lea eax, [ebp - 0x14]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10029f10
mov dword [esp], eax
call fcn.10029db0
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x1c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1002a100
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14]
mov dword [ecx + 0x38], edx
mov ecx, dword [ebp + 0x10]
and ecx, 4
cmp ecx, 0
setne cl
mov byte [ebp - 0x27], cl
cmp eax, 0xa68a5166
je 0x10047f3b
mov al, byte [ebp - 0x27]
test al, 1
jne 0x100478b7
jmp 0x10047811
mov eax, dword [0x10282264]
and eax, dword [0x10282268]
imul eax, eax, 0xef90c063
mov ecx, 0x9bd1b172
xor edx, edx
div ecx
add eax, 0x328dfd90
sub eax, 0x38d3c4bb
sub eax, 0x328dfd90
cmp eax, 0x8ef869cb
je 0x10047f8b
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1028226c]
mov edi, dword [0x10282270]
mov ebx, edi
xor ebx, 0xffffffff
mov esi, eax
and esi, ebx
mov edx, eax
or edx, ebx
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, edi
or eax, edi
imul eax, esi
add eax, edx
sub eax, 0xc62925c4
mov esi, 0x5b2d0c45
xor edx, edx
div esi
imul eax, eax, 0xece027df
mov dword [ebp - 0x30], eax
mov eax, dword [ecx + 0x38]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.10027ae0
sub esp, 0xc
mov eax, dword [ebp - 0x30]
cmp eax, 0xe4dbeb9e
ja 0x10047845
jmp 0x100478b7
mov eax, dword [ebp + 0x10]
and eax, 2
cmp eax, 0
jne 0x10047d25
mov ecx, dword [0x10282274]
mov edx, dword [0x10282278]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
and eax, 0xb102a15f
mov ecx, 0xa67e8ce1
xor edx, edx
div ecx
sub eax, 0xb5446f73
cmp eax, 0x9a2ed60a
ja 0x10047faf
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1028227c]
xor edx, edx
div dword [0x10282280]
add eax, 0x3871d9e7
imul eax, eax, 0xbe31793b
mov edi, 0xffffffff
xor edi, 0x436b3c21
mov esi, eax
and esi, edi
mov edx, eax
or edx, edi
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, 0x436b3c21
or eax, 0x436b3c21
imul eax, esi
add eax, edx
mov ecx, dword [ecx + 0x38]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp + 0x10]
mov edx, ecx
xor edx, 0x18
xor edx, 0xffffffff
or ecx, 0x18
and ecx, edx
cmp ecx, 0
setne cl
mov byte [ebp - 0x31], cl
cmp eax, 0xe5238a4
jbe 0x10047901
mov al, byte [ebp - 0x31]
test al, 1
jne 0x10047981
jmp 0x10047a29
mov eax, dword [0x10282284]
mov esi, dword [0x10282288]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, esi
and edx, ecx
mov edi, esi
xor edi, 0xffffffff
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xf4f648dc
xor ecx, 0xffffffff
and ecx, 0xf4f648dc
shl ecx, 1
sub ecx, 0xf4f648dc
sub eax, ecx
mov ecx, 0xe872bb31
xor edx, edx
div ecx
imul eax, eax, 0x67376575
cmp eax, 0x35870ff3
jae 0x10047fb4
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1028228c]
xor edx, edx
div dword [0x10282290]
add eax, 0xe09ce5c3
imul edx, eax, 0xb6f6ecf2
mov esi, 0xffffffff
xor esi, 0x35fbc554
mov eax, edx
xor eax, esi
and eax, edx
mov ecx, dword [ecx + 0x38]
mov dword [ebp - 0x3c], ecx
cmp eax, 0x2cf2b542
ja 0x100479e1
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x40], eax
jmp 0x10047aa5
mov eax, dword [0x10282294]
imul eax, dword [0x10282298]
mov ecx, eax
xor ecx, 0x1f00e517
xor ecx, 0xffffffff
and ecx, 0x1f00e517
shl ecx, 1
sub ecx, 0x1f00e517
sub eax, ecx
and eax, 0xd175f6c6
mov ecx, 0x7fb446d6
xor edx, edx
div ecx
cmp eax, 0xbf8c8b32
jae 0x10047fb9
mov eax, dword [0x1028229c]
xor edx, edx
div dword [0x102822a0]
mov ecx, 0x90507be5
xor edx, edx
div ecx
add eax, 0xff8b1f57
xor eax, 0x3ed3253b
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x44], ecx
cmp eax, 0x6e19f7fd
jb 0x10047fb9
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
jmp 0x10047aa5
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x48], eax
mov eax, dword [0x102822a4]
xor edx, edx
div dword [0x102822a8]
mov ecx, 0xffffffff
xor ecx, 0x472a2a73
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0xb6503d49
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9d2f23df
mov esi, 0xffffffff
xor esi, 0x9d2f23df
mov ecx, eax
and ecx, esi
imul ecx, edx
mov edx, eax
and edx, 0x9d2f23df
or eax, 0x9d2f23df
imul eax, edx
add eax, ecx
cmp eax, 0xcc3672dd
jbe 0x10047fbe
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x20]
mov esi, dword [0x102822ac]
xor esi, dword [0x102822b0]
sub esi, 0x7e1b97cd
xor esi, 0xbd949e4d
and esi, 0xb73bfb77
mov dword [ebp - 0x50], esi
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.1002a140
sub esp, 0xc
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp + 0x10]
and ecx, 4
cmp ecx, 0
setne cl
mov byte [ebp - 0x49], cl
cmp eax, 0x1bfa33d8
je 0x10047b0b
mov al, byte [ebp - 0x49]
test al, 1
jne 0x10047b78
jmp 0x10047c13
mov eax, dword [0x102822b4]
mov ecx, dword [0x102822b8]
add eax, 0x55ee8ffb
sub eax, ecx
sub eax, 0x55ee8ffb
xor eax, 0x38cbfa3f
add eax, 0xc471e4b9
sub eax, 0x49e37d6b
sub eax, 0xc471e4b9
or eax, 0x5e88fce7
cmp eax, 0xb1fec77
jbe 0x10047fe2
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x102822bc]
sub eax, dword [0x102822c0]
sub eax, 0xdbebcf1e
mov esi, 0x6d21c156
xor edx, edx
div esi
mov edx, eax
xor edx, 0xe33755cc
xor edx, 0xffffffff
or eax, 0xe33755cc
and eax, edx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.10027ae0
sub esp, 0xc
mov eax, dword [ebp - 0x54]
cmp eax, 0x662b6824
ja 0x10047bb3
jmp 0x10047c13
mov eax, dword [0x102822c4]
and eax, dword [0x102822c8]
imul eax, eax, 0x3d4e9c63
mov ecx, 0x9c8d8cd1
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xad5290a3
mov esi, 0xffffffff
xor esi, 0xad5290a3
mov ecx, eax
and ecx, esi
imul ecx, edx
mov edx, eax
and edx, 0xad5290a3
or eax, 0xad5290a3
imul eax, edx
add eax, ecx
cmp eax, 0x46d3adb9
je 0x10048006
mov eax, dword [0x102822cc]
xor edx, edx
div dword [0x102822d0]
mov ecx, eax
mov esi, 0xffffffff
xor esi, 0xe2785d29
mov edx, ecx
and edx, esi
mov eax, ecx
or eax, esi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0xe2785d29
or ecx, 0xe2785d29
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [ebp - 0x58], eax
mov esi, 0xffffffff
xor esi, 0x545d6f6e
mov edx, 0xffffffff
xor edx, 0x11f263d6
and eax, 0x11f263d6
and ecx, edx
mov edi, esi
and edi, 0x11f263d6
mov ebx, edx
and ebx, 0x545d6f6e
or eax, ecx
mov ecx, dword [ebp - 0x58]
or edi, ebx
xor eax, edi
or ecx, esi
xor ecx, 0xffffffff
or edx, 0x11f263d6
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6a6bb65f
mov ecx, 0xffffffff
xor ecx, 0xf7cfc00e
or eax, edx
or ecx, 0xf7cfc00e
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0xb9f03e3f
jae 0x10047c67
jmp 0x10047d25
mov eax, dword [0x102822d4]
mov ecx, dword [0x102822d8]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
and eax, 0x2476a053
mov ecx, 0x574c647c
xor edx, edx
div ecx
or eax, 0xb61316c7
cmp eax, 0xf5e22898
je 0x1004800b
mov eax, dword [0x102822dc]
xor edx, edx
div dword [0x102822e0]
or eax, 0xb324ca7
sub eax, 0xbac2f679
mov ecx, eax
xor ecx, 0xba627462
xor ecx, 0xffffffff
and ecx, 0xba627462
shl ecx, 1
sub ecx, 0xba627462
sub eax, ecx
mov edx, dword [ebp + 0x10]
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 1
and edx, 1
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
mov dword [ebp + 0x10], ecx
cmp eax, 0x8f3f7e1d
jb 0x10047d5a
jmp 0x10047e37
mov eax, dword [0x102822e4]
imul eax, dword [0x102822e8]
mov ecx, 0x9e43237a
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x70eeaa
add eax, ecx
xor ecx, ecx
sub ecx, 0x10e0cf65
add eax, ecx
cmp eax, 0x4881016c
je 0x10048033
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x102822ec]
sub eax, dword [0x102822f0]
sub eax, 0xec99b3d2
sub eax, 0x64ae5400
add eax, 0xec99b3d2
and eax, 0x2369e954
mov esi, 0x1ab920d9
xor edx, edx
div esi
mov dword [ecx + 0x38], 0
cmp eax, 0x8569f80a
je 0x10048033
jmp 0x10047e37
mov eax, dword [0x102822f4]
mov edx, dword [0x102822f8]
mov ecx, eax
xor ecx, 0xffffffff
mov esi, edx
xor esi, 0xffffffff
or ecx, esi
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
or ecx, 0x96376ff0
mov esi, 0xffffffff
xor esi, 0x15155d43
mov edx, ecx
and edx, esi
mov eax, ecx
or eax, esi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x15155d43
or ecx, 0x15155d43
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x92256839
or ecx, 0x92256839
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x81cc64f0
je 0x10048042
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x102822fc]
and eax, dword [0x10282300]
mov edx, eax
and edx, 0x2639f51
xor edx, 0xffffffff
and eax, 0x2639f51
xor eax, 0xffffffff
and edx, eax
xor edx, 0xffffffff
mov eax, edx
or eax, 0x41260cb5
xor eax, 0xffffffff
xor edx, 0xffffffff
mov esi, 0xffffffff
xor esi, 0x41260cb5
and edx, esi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
and eax, 0x9bdf879b
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x3c], edx
cmp eax, 0x8944e8e4
jae 0x10048042
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100b5a82
add esp, 0x58
pop esi
pop edi
pop ebx
pop ebp
ret 0xc
call fcn.100bb62d
jmp 0x100474da
jmp 0x100475a6
jmp 0x1004763d
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
add ecx, 0x40
lea eax, [ebp - 0x14]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10029f10
mov dword [esp], eax
call fcn.10029db0
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x1c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1002a100
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x14]
mov dword [eax + 0x38], ecx
jmp 0x1004775b
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x38]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.10027ae0
sub esp, 0xc
jmp 0x10047845
jmp 0x10047901
jmp 0x100479e1
jmp 0x10047a69
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.1002a140
sub esp, 0xc
jmp 0x10047b0b
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.10027ae0
sub esp, 0xc
jmp 0x10047bb3
jmp 0x10047c67
mov ecx, dword [ebp + 0x10]
mov eax, ecx
or eax, 1
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 1
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov dword [ebp + 0x10], eax
jmp 0x10047d5a
mov eax, dword [ebp - 0x20]
mov dword [eax + 0x38], 0
jmp 0x10047df5
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x3c], ecx
jmp 0x10047eb5